2009-06-30 8 views
15

Je souhaite créer un menu contextuel pour mon application winforms. Il aura les mêmes deux choses, peu importe où il apparaît. Un peu de chasse et de picotement m'amène à la conclusion que winforsm ne supporte pas cela d'une manière insignifiante ou l'a caché sous un nom que je n'ai pas encore deviné. Je pense que je peux le faire fonctionner avec l'événement Click et créer manuellement un menu au bon endroit, bla bla bla ... Yuck, je peux chose d'une chose à moitié dozon maintenant que je me trompe la première fois. Quelqu'un doit avoir un meilleur moyen.Menu contextuel sous winforms

Est-ce qu'il me manque un moyen simple d'ajouter ceci?

Y a-t-il une bibliothèque/un widget que je peux copier/coller pour gérer le travail fastidieux pour moi?

Répondre

22

Ajoutez un élément System.Windows.Forms.ContextMenuStrip au formulaire, puis définissez la propriété ContextMenuStrip du formulaire.

+0

Semble fonctionner; vérifier pour vous assurer que c'est vraiment le cas. – BCS

3

Placez un ContextMenuStrip sur votre formulaire, créez votre menu, puis définissez la propriété ContextMenuStrip sur le formulaire au composant créé.

2

Après avoir mis un ContextMenuStrip sur votre formulaire, ajoutez à votre Control (vous pouvez le faire dans Propriétés de Control), puis, utiliser le code comme ceci pour montrer le menu:

private void myTree_MouseClick(object sender, MouseEventArgs e) 
{ 
    myTree.ContextMenu.Show(myTree, new Point(e.X, e.Y)); 
} 

more on MSDN.

Questions connexes