2011-04-26 15 views
18

Actualmente tengo el siguiente código:cómo responder a un elemento ContextMenuStrip clic

ContextMenuStrip contexMenuuu = new ContextMenuStrip(); 

contexMenuuu.Items.Add("Edit "); 
contexMenuuu.Items.Add("Delete "); 
contexMenuuu.Show(); 

¿Cómo puedo añadir un evento para ser procesados ​​cuando se hace clic en un elemento?

+0

tengo algunos artículos, por favor, eche un vistazo en estos y creo que le dará una idea clara sobre el manejo del menú contextual, http://www.microbion.co.uk/developers/C%20context%20menu.pdf http://www.csharpkey.com/visualcsharp/sdimdi/contextmenu.htm – SharpUrBrain

Respuesta

5

Add método devuelve ToolStripItem. Para que pueda agregar mango para evento Click

 var item = contexMenuuu.Items.Add("Edit "); 
     item.Click += methodToBeInvoked; 
+0

¡genial! Ya trabajé con ContextMenu por un tiempo pero no mencioné eso ... – ephraim

28

Esto puede hacerse usando el siguiente código:

ContextMenuStrip contexMenuuu = new ContextMenuStrip(); 

contexMenuuu.Items.Add("Edit "); 
contexMenuuu.Items.Add("Delete "); 
contexMenuuu.Show(); 
contexMenuuu.ItemClicked += new ToolStripItemClickedEventHandler(
    contexMenuuu_ItemClicked); 

// ... 

void contexMenuuu_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { 
    ToolStripItem item = e.ClickedItem; 
    // your code here 
} 

O, alternativamente:

// ... 

ToolStripItem item = contexMenuuu.Items.Add("Edit "); 
item.Click += new EventHandler(item_Click); 

// ... 

void item_Click(object sender, EventArgs e) { 
    ToolStripItem clickedItem = sender as ToolStripItem; 
    // your code here 
} 
Cuestiones relacionadas