TreeView : selection d'un noeud avec le click droit [Résolu]

Signaler
Messages postés
16
Date d'inscription
mardi 13 septembre 2005
Statut
Membre
Dernière intervention
16 novembre 2006
-
Messages postés
16
Date d'inscription
mardi 13 septembre 2005
Statut
Membre
Dernière intervention
16 novembre 2006
-
Bonjour a tous !

Je suis nouveau sur le C#, je travaille avec depuis un mois environ. J'ai un probleme de GUI avec un objet Treeview. Ce que j'ai besoin de faire est de selectionner automatiquement le noeud sur lequel l'utilisateur a fait un clik droit. Ceci afin d'eviter a l'utilisateur d'avoir a faire un click gauche puis un click droit pour avoir le menu contextuel adapte au noeud choisi. Si l'utilisateur fait un click droit sur n'importe quel noeud, c'est le menu du dernier noeud selectionne qui apparait, et non celui du noeud sur lequel a ete effectue le click droit. Le but etant de faciliter la vie de l'utilisateur, et de rendre la GUI "user friendly".

J'espere que mes explications ne sont pas trop floues. Ca fait un moment deja que je cherche une solution, mais je ne la trouve pas. C'est d'autant plus frustrant que je mettrai 2 minutes a faire ca en Java ... j'ai pas mal cherche sur les forums c# ou dans la doc MSDN (qui est pas top d'ailleurs) mais sans resultats.

D'avance merci pour votre aide.

Yann.

2 réponses

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
32
tonTV.SelectedNode = tonTV.GetChildAtPoint(new Point(e.X, e.Y));

Sébastien FERRAND
Messages postés
16
Date d'inscription
mardi 13 septembre 2005
Statut
Membre
Dernière intervention
16 novembre 2006

Merci beaucoup, ca m'a mis sur la voie. Voici mon code (qui est valable pour les clicks droits et gauches) :





private void trvJobsTree_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)

{

TreeNode selectedNode = trvJobsTree.GetNodeAt(e.X, e.Y);

if(selectedNode!=null)


trvJobsTree.SelectedNode =
selectedNode;

}