Cómo agregar un separador a un WinForms ContextMenu?
-
20-09-2019 - |
Pregunta
Dentro de mi control, que 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 añadir una línea de separación a esta ContextMenu
Solución
Creo que es sólo un guión:
ContextMenu.MenuItems.Add("-");
Otros consejos
Esto funciona igual de bien que el tablero, y sospecho que los Winforms se traducirá el guión a un ToolStripSeparator. Por mi parte, creo que esto es la solución más evidente para cualquier persona que tiene que mantener el código.
yourContextMenu.Items.Add(new ToolStripSeparator());
En WPF:
ContextMenu.MenuItems.Add(new Separator());
Si está utilizando el diseñador, colocar un guión "-" como texto de la misma manera que nombraría a los elementos de menú. Después de oprimir la tecla Enter, se creará el separador.
Establecer la propiedad de texto a un guión.
Tal vez en las versiones posteriores de Visual Studio hicieron este sencillo. Estoy usando VS 2012. Se puede añadir un separador por el diseñador de formas. 1) Seleccionar / Crear un MenuStrip. 2) En "Escriba aquí", botón derecho del ratón. 3) Seleccione "Insertar". 4) Seleccione "separador". 5) Arrastre el nuevo separador al texto que quiere que sea anterior. Hecho.