Dentro de mi control, tengo:
ContextMenu = new ContextMenu();
ContextMenu.MenuItems.Add(new MenuItem("&Add Item", onAddSpeaker));
ContextMenu.MenuItems.Add(new MenuItem("&Edit Item", onEditSpeaker));
ContextMenu.MenuItems.Add(new MenuItem("&Delete Item", onDeleteSpeaker));
ContextMenu.MenuItems.Add( ??? );
ContextMenu.MenuItems.Add(new MenuItem("Cancel"));
¿Cómo agregar una línea de separación a este ContextMenu?
c#
winforms
contextmenu
separator
Adam Pierce
fuente
fuente

Respuestas:
Creo que es solo un guión:
fuente
ContextMenu.Items.Add(new ToolStripSeparator());vea la respuesta de GabrielEsto funciona tan bien como el guión, y sospecho que Winforms traducirá el guión a un ToolStripSeparator. Por mi parte, creo que esta solución es más obvia para cualquiera que tenga que mantener el código.
fuente
yourContextMenu.Items.Insert(3, new ToolStripSeparator());, pero noInsertun guión "-".En WPF:
fuente
Si está utilizando Designer, coloque un solo guión "-" como texto de la misma manera que nombraría los elementos de su menú. Después de presionar enter, se creará el separador.
fuente
Establezca la propiedad de texto en un guión.
fuente
Los separadores horizontales son geniales, pero ¿qué pasa si quieres un separador vertical?
Bueno, no te preocupes, ¡puedes tener uno!
Establezca la
BarBreakpropiedadtrueenMenuItemcuál debería ser la primera después del separador:Para agregar el elemento a una
MenuItemscolección:yourContextMenu.MenuItems.Add(item).fuente
Quizás en versiones posteriores de Visual Studio lo simplificaron. Estoy usando VS 2012. Puede agregar un separador a través del diseñador de formularios. 1) Seleccione / Cree una barra de menú. 2) En "Escriba aquí", mouse derecho. 3) Seleccione "Insertar". 4) Seleccione "Separador". 5) Arrastre el nuevo separador al texto que desea que esté arriba. Hecho.
fuente
ContextMenutiene un constructor que recibe una matriz deMenuItemobjetos. No hace falta decir que no puede agregar una cadena a esa matriz. Sin embargo, puede obtener un separador agregando unnew MenuItem("-"):fuente