locked
ContextMenu appliqué à un Bouton RRS feed

  • Question

  • Bonjour,

    Petit question,

    ContextMenu ContextMenuGlobal = new ContextMenu();

    MenuItem RemplacerPar = new MenuItem();

    MenuItem Infos = new MenuItem();

    MenuItem Fermer = new MenuItem();

    Button MonBouton = new Button();

    RemplacerPar.Header = " Remplacer par(Catalog) :"; 

    Infos.Header = "Infos ?";

    Fermer.Header = "Fermer";

    ContextMenuGlobal.Background = new SolidColorBrush(Colors.Black); 

    ContextMenuGlobal.Items.Add(RemplacerPar); ContextMenuGlobal.Items.Add(Infos); ContextMenuGlobal.Items.Add(Fermer);

    MonBouton.Background = new SolidColorBrush(Colors.White); MonBouton.Foreground = null; MonBouton.BorderBrush = null;

     

    Je n'arrive pas à assigner mon ContextMenu à mon bouton (je pensais avoir une possibilité comme MonBouton.children.add(ContextMenuGlobal; mais non)

    Je ne veux pas passer par le code Xaml, si quelqu'un peux m'aider ça m'aiderait (2h que je suis dessus)

    Merci 

    vendredi 13 mai 2011 09:10

Réponses

  • Bonjour,

    voici votre code Modifier pour afficher le ContextMenu :

    ContextMenu ContextMenuGlobal = new ContextMenu();
    
          MenuItem RemplacerPar = new MenuItem();
    
          MenuItem Infos = new MenuItem();
    
          MenuItem Fermer = new MenuItem();
    
          Button MonBouton = new Button();
          MonBouton.Content = "button 1";
          
          RemplacerPar.Header = " Remplacer par(Catalog) :";
    
          Infos.Header = "Infos ?";
    
          Fermer.Header = "Fermer";
          
          //ContextMenuGlobal.Background = new SolidColorBrush(Colors.Black);
          ContextMenuGlobal.Items.Add(RemplacerPar); ContextMenuGlobal.Items.Add(Infos); ContextMenuGlobal.Items.Add(Fermer);
    
          //MonBouton.Background = new SolidColorBrush(Colors.White); MonBouton.Foreground = null; MonBouton.BorderBrush = null;
          ContextMenuService.SetContextMenu(MonBouton, ContextMenuGlobal);
          
          ContentPanel.Children.Add(MonBouton);
        
    

    L'important dans ce code est la ligne ou on appel la méthode ContextMenuService.SetContextMenu(objet contenant le menu, Contextmenu).

    Petit Rappel pour tester le menu contextuel dans l'emulateur, il faut cliquer longtemps sur le Bouton.


    Cordialement, Pascal.

    Développeur Wpf/SilverLight/WinPhone7

    • Proposé comme réponse Pascal Saille vendredi 13 mai 2011 17:01
    • Marqué comme réponse Romain WP samedi 14 mai 2011 13:16
    vendredi 13 mai 2011 17:01