En vb6 lorsque je faisait un clique droit sur un noeud il m'afficher un menu et il me sélectionné le noeud.
J'utilisé :
Private Sub Liste_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim oNode As node
If Button = vbRightButton Then
Set oNode = Liste.HitTest(X, Y)
If Not oNode Is Nothing Then
If oNode.Children = 0 Then
oNode.Selected = True
PopupMenu mnu
End If
End If
End If
le clique droit fonctionné que si le noeut été un enfant, il le sélectionné et ouvré un popupMenu !
Mais là je suis incapable de trouvé l'équivalence avec VB 2005 pour sélectionné le noeud !
Pour l'instant j'en suis rendu là :
Private
Sub Liste_MouseDown(
ByVal sender
As
Object,
ByVal e
As System.Windows.Forms.MouseEventArgs)
Handles Liste.MouseDown
Dim oNode
As TreeNode
If e.Button = Windows.Forms.MouseButtons.Right
Then
oNode = Liste.GetNodeAt(e.X, e.Y)
If
Not oNode
Is
Nothing
Then
If oNode.GetNodeCount(
False) = 0
Then
---- Ici il me manque la selection du noeud enfant ----
End
If
End
If
End
If
End
SubLà si je clique sur un noeud et que je fait un clique droit sur un autre noeud il me retourne les info du premier noeud sélectionné et non celle du noeud sur lequel je vien de faire un clique droit !