TreeView, ouvrir avec une clé ..

Résolu
lilo44 Messages postés 174 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 15 février 2007 - 15 nov. 2006 à 17:52
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 - 16 nov. 2006 à 10:46
bonjour,

difficile d expliquer !

En gros, je fais une mise a jour qui change la forme et l'orga du treeview.
Après cette mise a jour, je le recharge (pour mettre a jour le contenu) et toutes les branches sont fermées.

J'ai la clé de la fiche (de l'enfant du treevew) que je viens de mettre a jour.

Comment faire pour que après la mise a jour et le rechargement de l'arbre, je reouvre l'arborescence pour afficher de nouveau cette fiche ?

Le but du jeu etant d ouvrir seulement les branches permattant dacceder a cette fiche. Je ne souhaite pas ouvrir des branches pour rien.

J espère que c'est a peu pret clair !

Merci :)

8 réponses

Neo.balastik Messages postés 796 Date d'inscription jeudi 17 mai 2001 Statut Membre Dernière intervention 5 mai 2009 7
15 nov. 2006 à 19:48
Salut ;O)

Pour VB6
Imaginons l'arbre suivant (TreeView1) :

Dim MyNode As Node


Set MyNode = Me.TreeView1.Nodes.Add(, , "KEY1", "KEY1")
   Set MyNode = Me.TreeView1.Nodes.Add("KEY1", tvwChild, "KEY1A", "KEY1A")


Set MyNode = Me.TreeView1.Nodes.Add(, , "KEY2", "KEY2")
   Set MyNode = Me.TreeView1.Nodes.Add("KEY2", tvwChild, "KEY2A", "KEY2A")
      Set MyNode = Me.TreeView1.Nodes.Add("KEY2A", tvwChild, "KEY2A1", "KEY2A1")


Set MyNode = Me.TreeView1.Nodes.Add(, , "KEY3", "KEY3")
   Set MyNode = Me.TreeView1.Nodes.Add("KEY3", tvwChild, "KEY3A", "KEY3A")


'Si l'on veut sélectionner directement une clé (dans ce cas KEY2A) et l'ouvrir :

Me.TreeView1.SetFocus
Me.TreeView1.Nodes("KEY2A").Selected = True
Me.TreeView1.Nodes("KEY2A").Expanded = True
Me.TreeView1.Nodes("KEY2A").EnsureVisible

Espérant répondre à ta question...

Guy
3
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
15 nov. 2006 à 20:22
il faut utiliser la propriete selectednode

il faut sauvegarder le node en cours avant de recharger la treeview
et a la fin du rechargement de la treeview
affecter a treeview.selectednode= node sauvé

en fait cela devrait donner une chose du style :

Dim TreeNode_en_cours
As TreeNode
'//sauver le node en cours avant de recharger la treeviewTreeNode_en_cours New TreeNodeTreeNode_en_cours TreeView1.SelectedNode

'// a la fin du rechargement de la treeview pour se'lectionner le treenode precedemment selectionnéTreeView1.SelectedNode = TreeNode_en_cours

++
0
lilo44 Messages postés 174 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 15 février 2007 2
16 nov. 2006 à 08:14
selectednode ne semble pas existé :(
0
lilo44 Messages postés 174 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 15 février 2007 2
16 nov. 2006 à 08:14
exister *** pardon
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lilo44 Messages postés 174 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 15 février 2007 2
16 nov. 2006 à 08:19
Merci a vous 2 :)
0
Neo.balastik Messages postés 796 Date d'inscription jeudi 17 mai 2001 Statut Membre Dernière intervention 5 mai 2009 7
16 nov. 2006 à 08:20
Salut ;O)

Le première solution est en VB6.
La 2e est en VB.NET

A toi de choisir selon ta version de VB...

Guy
0
lilo44 Messages postés 174 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 15 février 2007 2
16 nov. 2006 à 09:08
oki. C'est ce que je me disais :p

J'avais posté sur un forum VB6 mais j'aurais pu préciser.

Merci en tout cas :)
0
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
16 nov. 2006 à 10:46
raaa mince a chaque fois je me fais avoir j'avais pas vu que cete en VB6
0
Rejoignez-nous