TreeView : selection d'un noeud avec le click droit

Résolu
rocknbananas Messages postés 16 Date d'inscription mardi 13 septembre 2005 Statut Membre Dernière intervention 16 novembre 2006 - 13 sept. 2005 à 11:54
rocknbananas Messages postés 16 Date d'inscription mardi 13 septembre 2005 Statut Membre Dernière intervention 16 novembre 2006 - 13 sept. 2005 à 13:54
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

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
13 sept. 2005 à 12:13
tonTV.SelectedNode = tonTV.GetChildAtPoint(new Point(e.X, e.Y));

Sébastien FERRAND
3
rocknbananas Messages postés 16 Date d'inscription mardi 13 septembre 2005 Statut Membre Dernière intervention 16 novembre 2006
13 sept. 2005 à 13:54
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;

}
3
Rejoignez-nous