cs_ultimafight
Messages postés22Date d'inscriptionjeudi 7 octobre 2004StatutMembreDernière intervention 4 août 2006
-
24 mai 2006 à 22:47
cs_ultimafight
Messages postés22Date d'inscriptionjeudi 7 octobre 2004StatutMembreDernière intervention 4 août 2006
-
25 mai 2006 à 14:21
Bonjour
J'ai un probléme sur l'interaction entre un treeview est une listeview
J'ai un treeview nommé treeview1 et un listeview nommé listeview1
J'ai deja codé pour :
quand je click sur le neud du treeview1 >les neuds enfants apparaisse dans listeview1
mainteant je voudrais que :
Quand je click deux fois un item de listeview1 >le noeud correspondant au treeview1 soit selectionné
simple nan, mais voila, j'y arrive pas
si une âme charitable pouvait m'aider. (un ptit bout de code SVP :))
cs_ultimafight
Messages postés22Date d'inscriptionjeudi 7 octobre 2004StatutMembreDernière intervention 4 août 2006 25 mai 2006 à 14:21
re
Je vient de trouver une methode : (elle est moche, parceque l'on voit dans le treeview chaque noeud ce selectionner pendant la procedure)
Y 'a t'il une methode plus propre que ceci ?
sachant que mes index dans le treeview est defini comme suit :
merci bien :p
0
0
1
2
3
1
0
1
0
1
2
Dim MonNeudActuel As New TreeNode
Dim MonTreeview As TreeView = ExplorateurADTreeview
Dim i
Try
'je verifi si le neud est ouvert sinon je l'ouvre
If MonNeud.IsExpanded = False Then MonNeud.ExpandAll()
'ici une boucle "pas beau du tout"
For i = 1 To 100
'ici je defini MonNeudActuel comme etant au neud actuellement selectionné
MonNeudActuel = MonTreeview.SelectedNode
'ici je défini le Neud du treeview comme etant le neud visible suivant
MonTree.SelectedNode = MonNeudActuel.NextVisibleNode
'ici je verifi si le MonNeudActuel correspont au nom de l'item de ma listeview
If MonNeudActuel.Text = MonItemRechercher Then
'ici je demande a montreeview de selecitonner le MonNeudActuel
MonTree.SelectedNode = MonNeudActuel
MonTree.SelectedNode.ExpandAll()
Exit Sub
End If
Next
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 25 mai 2006 à 03:34
Salut
Je ne rentre pas dans le détail des noeuds des TreeView, mais ton problème consiste à retrouver l'Item/Noeud dans ton TreeView à partir du click sur un Item de ton ListView.
Il faut donc mémoriser l'endroit d'où ont été extraites les données du TreeView (pour chaque Item 'copié').
Les ListView ont l'avantage de posséder un attribut .Tag pour chaque item (et pas un seul pour tout le composant comme dans les ListBox)
--> Utilise ce .Tag pour stocker les coordonnées du noeud auquel appartiennent les données.
Quand tu cliqueras sur un Item de ton ListView, relis le .Tag associé : il te permettra de localiser le Noeud.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
cs_ultimafight
Messages postés22Date d'inscriptionjeudi 7 octobre 2004StatutMembreDernière intervention 4 août 2006 25 mai 2006 à 11:46
Merci pour la reponse mais, sa ne vas pas :s
Car quand je click sur un neud dans un treeview
Je cree des items dans ma listeview qui correspond au Text des neuds enfants
En fait je voudrais faire comme dans un explorateur de fichier, mais avec des items
un peut comme la fonction
Dim MonTree As TreeView = ExplorateurADTreeview
Dim MonNeud As New TreeNode
MonTree.SelectedNode = MonNeud.NextNode
mais je voudrais
MonTree.SelectedNode = MonNeud."Le neud que je désire"
donc je voudrais faire un code du genre
>rechercher le noeud dans le treeview qui corresponderais au texte de mon item dans listeview
>quand trouver mettre en surbrillance dans mon treeview le noeud trouvé
Merci, je sais c'est un peut barbare comme méthode, mais je débute en .net :p
THX pour les reponses
Vous n’avez pas trouvé la réponse que vous recherchez ?