[VB .Net] Gérer le clic droit sur un treeview [Résolu]

Signaler
Messages postés
50
Date d'inscription
mercredi 19 mars 2003
Statut
Membre
Dernière intervention
12 mai 2007
-
edokt
Messages postés
137
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008
-
Salut tout le monde,
Mon problème est simple : j'ai un treeview que je remplis sans problèmes mais le souci et que je ne sais pas gérer le clic droit sur un noeud.
Si j'utilise l'événement MouseDown, je ne peux pas savoir le noeud sur lequel se produit l'évenement vu que le noeud sélectionné ne change pas sur un clic droit. Le plus simple serai de sélectionner mon noeud sur lequel je clique mais je vois pas comment faire là.

6 réponses

Messages postés
137
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008

Pardon j'ai pas remarqué que c'est en vb.net

Mais voila une autre solution pour .net

<hr style="width: 100%; height: 2px;">

Private Sub TreeView1_MouseDown(ByVal sender As
Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles
TreeView1.MouseDown

If e.Button = MouseButtons.Right Then

'declarer un object treeView pour caster le sender

Dim castTreeView As TreeView

'Caster le sender

castTreeView = sender

'
Selectioner sur vrai TreeView Control le Node qui correrspond a la
position de souris

TreeView1.SelectedNode = castTreeView.GetNodeAt(e.X, e.Y)

'Message pour verifier

MsgBox(TreeView1.SelectedNode.Text)

'ou

MsgBox(castTreeView.GetNodeAt(e.X, e.Y).Text)

End If

End Sub
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 199 internautes nous ont dit merci ce mois-ci

Messages postés
137
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008

Normalement ça marche comme ça

<hr style="width: 100%; height: 2px;">

Private Sub TreeView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)

If Button = 2 Then
Set Me.TreeView1.DropHighlight = Me.TreeView1.HitTest(x, y)
Me.TreeView1.DropHighlight.Selected = True

MsgBox Me.TreeView1.SelectedItem.Text

End If

End Sub

<hr style="width: 100%; height: 2px;">Merci d'indiquer l'acceptation



P.S.
Tout génial - il est simple
Messages postés
50
Date d'inscription
mercredi 19 mars 2003
Statut
Membre
Dernière intervention
12 mai 2007

En vb .Net Drop Highlight et HitTest n'exxiste pas sur le Treeview.
Quelqu'un à un autre solution qui marche en vb .Net ?
Messages postés
50
Date d'inscription
mercredi 19 mars 2003
Statut
Membre
Dernière intervention
12 mai 2007

Ok merci c'est bon mais c'est meme plus simple que çà :
TreeView1.SelectedNode = TreeView1.GetNodeAt(e.X, e.Y)
Rien que çà çà suffit.
Messages postés
137
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008

Oui j'ai pris l'exemple que j'avais

La j'utilisais sender pour un autre truc et j'ai pas enlever pour toi

ça t'a aider quand meme?

C'est bien alors
Messages postés
137
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008

Merci pour l'acceptation