IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[C#] Clic droit sur un TreeView


Sujet :

Windows Forms

  1. #1
    Membre habitué Avatar de whilecoyote
    Inscrit en
    Novembre 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 154
    Points : 149
    Points
    149
    Par défaut [C#] Clic droit sur un TreeView
    Bonjour,

    Je souhaite créer un menu contextuel, activié par un clic droit, sur les éléments d'un treeview. Est-ce possible ? Est-ce que quelqu'un l'a déja fait et peux m'expliquer comment le faire?

    D'avance merci

  2. #2
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Points : 1 453
    Points
    1 453
    Par défaut
    Hello,

    C'est pour une appli commerciale ou juste pour toi ?
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 310
    Points : 157
    Points
    157
    Par défaut
    - Oui c'est possible

    - je l'ai déja fait dans une application

    - et oui je peux t'expliquer

    c'est sur MouseUp récupérer le X et Y, après tu fais un hitTest sur ta TreeView afin de savoir si tu es bien sur un noeud, puis tu utilise ton ContextMenu avec le X et Y récupéré

  4. #4
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Points : 1 453
    Points
    1 453
    Par défaut
    Hello,

    En lieu et place du HitTest tu peux également tester le nombre d'éléments actuellement sélectionnés avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If ListView.SelectedItems.Count.Equals(0) Then
      ...
     Else
      ...
     End If
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 310
    Points : 157
    Points
    157
    Par défaut
    le HitTest permet de savoir si on a cliqué sur le bon élement du treeview qu'on veut

    mais en fait il y a plus simple

    TreeView1.ContextMenu = ContextMenu1

    et voila

  6. #6
    Nouveau membre du Club
    Profil pro
    chef
    Inscrit en
    Février 2005
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : chef

    Informations forums :
    Inscription : Février 2005
    Messages : 30
    Points : 25
    Points
    25
    Par défaut
    Salut,

    j'ai déjà du faire ceci et j'ai simplement utilisé l'evt mouseDown sur le treeview. Si le click est le droit, j'affiche le menu contextuel.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    private void Tree_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
    {
      if (e.Button == MouseButtons.Right)
      {				
        mnuPopUp.Show(this, new Point(e.X,e.Y));
        ....
      }
      ....
    }
    voila un bout de code qui peut p-e t'aider

    Denis

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Clic droit sur un noeud d'un treeview
    Par vandrie dans le forum VBA Access
    Réponses: 1
    Dernier message: 13/01/2014, 21h31
  2. Clic droit sur un wxButton ?
    Par Eldered dans le forum wxWidgets
    Réponses: 3
    Dernier message: 13/07/2006, 14h22
  3. clic droit sur image
    Par iamhere dans le forum C++Builder
    Réponses: 1
    Dernier message: 15/06/2006, 15h15
  4. [MFC] clic droit sur une listbox ?
    Par julien.nasser dans le forum MFC
    Réponses: 1
    Dernier message: 07/06/2006, 14h53
  5. Clic droit sur un TTabControl
    Par FredericB dans le forum C++Builder
    Réponses: 5
    Dernier message: 04/04/2006, 19h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo