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 Presentation Foundation Discussion :

Création ContextMenu dynamiquement


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 73
    Par défaut Création ContextMenu dynamiquement
    Bonjour,

    Je créé un ContextMenu dynamiquement sur un UserControl:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    private void OnMouseRightButtonDown(object sender, RoutedEventArgs e)
        {
          UserControl usrctrl = (UserControl)sender;
          ContextMenu menu = new ContextMenu();
          menu.Items.Add("Forçages...");
          menu.Items.Add("Rebonds...");
          usrctrl.ContextMenu = menu;
          usrctrl.ContextMenu.PreviewMouseLeftButtonDown+= new    MouseButtonEventHandler(CapteurRightClick);
        }
    Lorsque je clique sur un item du menu, je passe dans la fonction suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void CapteurRightClick(Object sender, MouseButtonEventArgs args)
        {
          ContextMenu menu = (ContextMenu)sender;
        }
    Comment récupérer sur quel menu j'ai cliqué (index?)?

    Merci pour votre aide

    Sanouk

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Peut-être en regardant dans args.OriginalSource

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 73
    Par défaut
    Ca ne fonctionne pas, args.OriginalSource est de type Border.
    Sanouk

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Salut,

    Tu devrais créer tes MenuItem de cette façon :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    private void OnMouseRightButtonDown(object sender, RoutedEventArgs e)
    {
      UserControl usrctrl = (UserControl)sender;
      ContextMenu menu = new ContextMenu();
     
      MenuItem menuItem = new MenuItem();
      menuItem.Header = "Forçages...";
      menuItem.Click += Mi_Click;
      menu.Items.Add(menuItem);
     
      menuItem = new MenuItem();
      menuItem.Header = "Rebonds...";
      menuItem.Click += Mi_Click;
      menu.Items.Add(menuItem);
     
      usrctrl.ContextMenu = menu;
    }

    Comme ça dans le sender de Mi_Click, tu auras un MenuItem.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 73
    Par défaut
    C'est vrai que c'est plus simple comme cela.
    Merci beaucoup
    sanouk

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/11/2006, 16h36
  2. [Système] Création menu dynamique
    Par delma dans le forum Langage
    Réponses: 1
    Dernier message: 20/10/2006, 19h44
  3. [Flash 6] Création clip dynamique
    Par arnaud_verlaine dans le forum ActionScript 1 & ActionScript 2
    Réponses: 8
    Dernier message: 28/09/2006, 05h52
  4. Création fichier dynamique
    Par delavega dans le forum ASP
    Réponses: 7
    Dernier message: 22/09/2006, 10h02

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