Esta documentación está archivada y no tiene mantenimiento.

Menu (Clase)

Representa la funcionalidad base de todos los menús. Aunque los controles ToolStripDropDown y ToolStripDropDownMenu reemplazan y agregan funcionalidad al control Menu de versiones anteriores, se conserva Menu a efectos de compatibilidad con versiones anteriores y uso futuro, en su caso.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

public abstract class Menu : Component
public abstract class Menu extends Component
public abstract class Menu extends Component
No aplicable.

Ésta es la clase base de las clases MainMenu, MenuItem y ContextMenu. No se puede crear una instancia de esta clase. Los menús de una aplicación están formados por objetos MenuItem. A su vez, pueden contener otros objetos MenuItem que representan elementos de submenús. Los objetos MenuItem se pueden almacenar en un objeto MainMenu para que se muestren como una estructura de menús completa para un formulario o un objeto ContextMenu que se utiliza para mostrar los menús contextuales. Esta clase proporciona la funcionalidad común a todas las clases de menús.

A diferencia de muchas clases base, la clase Menu utiliza sus clases derivadas para definir muchas de sus propiedades. Si utiliza el menú en una aplicación de interfaz de múltiples documentos (MDI), puede usar la propiedad MdiListItem para especificar un objeto MenuItem que muestra una lista de los formularios MDI secundarios abiertos que hay en la aplicación. La propiedad MenuItems contiene una lista de los objetos MenuItem almacenados en la clase de menú. Para MainMenu o ContextMenu, esta propiedad contiene todos los objetos MenuItem que se muestran. Para un objeto MenuItem, la propiedad MenuItems representa los elementos de submenús asociados al mismo.

Además de las propiedades que se proporcionan para todas las clases de menú derivadas, la clase Menu también dispone de métodos, como CloneMenu y MergeMenu, que permiten crear nuevos menús a partir de menús existentes, así como combinar dos estructuras de menús.

La clase Menu también define la clase anidada Menu.MenuItemCollection. Esta clase define la colección de objetos MenuItem que utiliza la propiedad MenuItems. Puede utilizar los métodos de la clase Menu.MenuItemCollection para agregar y quitar elementos de menú de MainMenu, ContextMenu o MenuItem.

El siguiente ejemplo de código utiliza la clase derivada MenuItem con el fin de crear una estructura de menú para un formulario. El código de ejemplo agrega un objeto MenuItem que representa el elemento de menú de nivel superior, le agrega un elemento de submenú para seleccionar un tamaño de fuente y, a continuación, agrega dos elementos de submenú a ese elemento de menú que representan las opciones de fuente grande y pequeña de una aplicación. El ejemplo requiere que existan un objeto MainMenu denominado mainMenu1 y cuatro objetos MenuItem denominados menuItem1, menuItem2, menuItem3 y menuItem4.

public void CreateMyMenu()
    {
    // Set the caption for the top-level menu item.
    menuItem1.Text = "Edit";
    // Set the caption for the first submenu.
    menuItem2.Text = "Font Size";
    // Set the caption for menuItem2's first submenu.
    menuItem3.Text = "Small";
    // Set the checked property to true since this is the default value.
    menuItem3.Checked = true;
    // Define a shortcut key combination for the menu item.
    menuItem3.Shortcut = Shortcut.CtrlS;
    // Set the caption of the second sub menu item of menuItem2.
    menuItem4.Text = "Large";
    // Define a shortcut key combination for the menu item.
    menuItem4.Shortcut = Shortcut.CtrlL;
    // Set the index of the menu item so it is placed below the first submenu item.
    menuItem4.Index = 1;
    // Add menuItem3 and menuItem4 to menuItem2's list of menu items.
    menuItem2.MenuItems.Add(menuItem3);
    menuItem2.MenuItems.Add(menuItem4);
    // Add menuItem2 to menuItem1's list of menu items.
    menuItem1.MenuItems.Add(menuItem2);
    // Add menuItem1 to the MainMenu for displaying.
    mainMenu1.MenuItems.Add(menuItem1);
    }


public void CreateMyMenu()
{
    // Set the caption for the top-level menu item.
    menuItem1.set_Text("Edit");

    // Set the caption for the first submenu.
    menuItem2.set_Text("Font Size");

    // Set the caption for menuItem2's first submenu.
    menuItem3.set_Text("Small");

    // Set the checked property to true since this is the default value.
    menuItem3.set_Checked(true);

    // Define a shortcut key combination for the menu item.
    menuItem3.set_Shortcut(Shortcut.CtrlS);

    // Set the caption of the second sub menu item of menuItem2.
    menuItem4.set_Text("Large");

    // Define a shortcut key combination for the menu item.
    menuItem4.set_Shortcut(Shortcut.CtrlL);

    // Set the index of the menu item so it is placed below
    //the first submenu item.
    menuItem4.set_Index(1);

    // Add menuItem3 and menuItem4 to menuItem2's list of menu items.
    menuItem2.get_MenuItems().Add(menuItem3);
    menuItem2.get_MenuItems().Add(menuItem4);

    // Add menuItem2 to menuItem1's list of menu items.
    menuItem1.get_MenuItems().Add(menuItem2);

    // Add menuItem1 to the MainMenu for displaying.
    mainMenu1.get_MenuItems().Add(menuItem1);
} //CreateMyMenu

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
Mostrar: