C# winform con barra contextual menú generado dinámicamente
anulación protegida void OnLoad(EventArgs e)
{
base.OnLoad(e
// AddMenuI);
ToolStripMenuItem subItem;
SubItem = AddContextMenu("Noticias", contextMenuStrip) new EventHandler(MenuClicked));
AddContextMenu("Preocupaciones de hoy", subItem. DropDownItems, new EventHandler(MenuClicked));
// Agregar menú dos
subItem = AddContextMenu("Chistes", contextMenuStrip1.Items,
//Agregar submenú);
AddContextMenu("Bromas modernas", subItem.
AddContextMenu("Bromas modernas", subItem.DropDownItems, new EventHandler(MenuClicked));
/ Agregar SubMenú
AddContextMenu("Chistes antiguos", subItem.DropDownItems, nuevo EventHandler(MenuClicked));
}
// < resumen>
/// Agregar submenú
///
/// El texto que se mostrará, si - entonces mostrar Para el divisorEvento que se activa al hacer clic
///
ToolStripMenuItem AddContextMenu(texto de cadena, cms ToolStripItemCollection, devolución de llamada de EventHandler)
{
if (texto == "-")
{
ToolStripSeparator tsp = nuevo ToolStripSeparator();
cms.Add(tsp);
return null; /p>
else if (!string.IsNullOrEmpty(text))
{
ToolStripMenuItem tsmi = new ToolStripMenuItem(texto);
if (devolución de llamada! = null ) tsmi.Click += devolución de llamada;
cms.Add(tsmi
return tsmi;
}
return tsmi.
devuelve nulo
}
v
oid MenuClicked(remitente del objeto, EventArgs e)
{
MessageBox.Show("Hiciste clic en el elemento del menú [" + ((remitente como ToolStripMenuItem).Text) + "]")
}
}