2011-05-18 2 views
1

J'ai un winform avec plusieurs contrôles PictureBox. J'ai un menu contextuel qui est attaché à tous ces contrôles PictureBox. J'ai 3 submitems (menus) dans le menu contextuel qui devrait être affiché dans le clic droit sur l'une des PictureBox instances et cela fonctionne très bien.Activer ou désactiver dynamiquement les éléments du menu contextuel

Maintenant, avant les popups du menu contextuel, j'ai besoin de vérifier les propriétés de PictureBox où il est cliqué pour activer ou désactiver certains sous-menus.

private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) 
    { 

    } 

Je vois cet événement, mais l'objet sender est une référence de ContextMenu. J'ai besoin du paramètre PictureBox pour le faire.

Répondre

2

Je n'ai pas essayé ceci mais vous pourriez vouloir regarder le SourceControl property du ContextMenu (sender).

Il doit contenir une référence au contrôle réel pour lequel ContextMenu est affiché.

La page MSDN à laquelle j'ai été associé possède également un échantillon qui, selon moi, sera utile. Ils écoutent le Popup event, mais ça devrait être pareil.

+0

merci ça marche, j'ai essayé contextMenuStrip1.SourceControl dans le même événement ça marche – AjayR

Questions connexes