ContextMenu ContextMenu ContextMenu ContextMenu Class

Definición

Representa un menú contextual.Represents a shortcut menu. Aunque el control ContextMenuStrip reemplaza y agrega funcionalidad al control ContextMenu de las versiones anteriores, ContextMenu se conserva a efectos de compatibilidad con versiones anteriores y uso futuro, si se desea.Although ContextMenuStrip replaces and adds functionality to the ContextMenu control of previous versions, ContextMenu is retained for both backward compatibility and future use if you choose.

public ref class ContextMenu : System::Windows::Forms::Menu
public class ContextMenu : System.Windows.Forms.Menu
type ContextMenu = class
    inherit Menu
Public Class ContextMenu
Inherits Menu
Herencia

Ejemplos

En el ejemplo de código siguiente se crea un controlador de eventos para el Popup eventos de la ContextMenu.The following code example creates an event handler for the Popup event of the ContextMenu. El código en el controlador de eventos determina cuál de los dos controles un PictureBox denominado pictureBox1 y un TextBox denominado textBox1 es el control muestra el menú contextual.The code in the event handler determines which of two controls a PictureBox named pictureBox1 and a TextBox named textBox1 is the control displaying the shortcut menu. Dependiendo de qué control que provocó la ContextMenu para mostrar el menú contextual, el control agrega adecuado MenuItem objetos a la ContextMenu.Depending on which control caused the ContextMenu to display its shortcut menu, the control adds the appropriate MenuItem objects to the ContextMenu. En este ejemplo requiere que tenga una instancia de la ContextMenu clase, denominada contextMenu1, que se define dentro del formulario.This example requires that you have an instance of the ContextMenu class, named contextMenu1, defined within the form. En este ejemplo también requiere que haya un TextBox y PictureBox agregado a un formulario y que la ContextMenu propiedad de estos controles está establecida en contextMenu1.This example also requires that you have a TextBox and PictureBox added to a form and that the ContextMenu property of these controls is set to contextMenu1.

private:
   void MyPopupEventHandler( System::Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Define the MenuItem objects to display for the TextBox.
      MenuItem^ menuItem1 = gcnew MenuItem( "&Copy" );
      MenuItem^ menuItem2 = gcnew MenuItem( "&Find and Replace" );
      // Define the MenuItem object to display for the PictureBox.
      MenuItem^ menuItem3 = gcnew MenuItem( "C&hange Picture" );
      
      // Clear all previously added MenuItems.
      contextMenu1->MenuItems->Clear();

      if ( contextMenu1->SourceControl == textBox1 )
      {
         
         // Add MenuItems to display for the TextBox.
         contextMenu1->MenuItems->Add( menuItem1 );
         contextMenu1->MenuItems->Add( menuItem2 );
      }
      else if ( contextMenu1->SourceControl == pictureBox1 )
      {
         // Add the MenuItem to display for the PictureBox.
         contextMenu1->MenuItems->Add( menuItem3 );
      }
   }
private void MyPopupEventHandler(System.Object sender, System.EventArgs e)
 {
    // Define the MenuItem objects to display for the TextBox.
    MenuItem menuItem1 = new MenuItem("&Copy");
    MenuItem menuItem2 = new MenuItem("&Find and Replace");
    // Define the MenuItem object to display for the PictureBox.
    MenuItem menuItem3 = new MenuItem("C&hange Picture");

    // Clear all previously added MenuItems.
    contextMenu1.MenuItems.Clear();
 
    if(contextMenu1.SourceControl == textBox1)
    {
       // Add MenuItems to display for the TextBox.
       contextMenu1.MenuItems.Add(menuItem1);
       contextMenu1.MenuItems.Add(menuItem2);
    }
    else if(contextMenu1.SourceControl == pictureBox1)
    {
       // Add the MenuItem to display for the PictureBox.
       contextMenu1.MenuItems.Add(menuItem3);
    }
 }
Private Sub MyPopupEventHandler(sender As System.Object, e As System.EventArgs)
    ' Define the MenuItem objects to display for the TextBox.
    Dim menuItem1 As New MenuItem("&Copy")
    Dim menuItem2 As New MenuItem("&Find and Replace")
    ' Define the MenuItem object to display for the PictureBox.
    Dim menuItem3 As New MenuItem("C&hange Picture")
    
    ' Clear all previously added MenuItems.
    contextMenu1.MenuItems.Clear()
    
    If contextMenu1.SourceControl Is textBox1 Then
        ' Add MenuItems to display for the TextBox.
        contextMenu1.MenuItems.Add(menuItem1)
        contextMenu1.MenuItems.Add(menuItem2)
    ElseIf contextMenu1.SourceControl Is pictureBox1 Then
        ' Add the MenuItem to display for the PictureBox.
        contextMenu1.MenuItems.Add(menuItem3)
    End If
End Sub 'MyPopupEventHandler '

Comentarios

La ContextMenu clase representa los menús contextuales que pueden mostrarse cuando el usuario hace clic con el botón secundario del mouse sobre un control o el área del formulario.The ContextMenu class represents shortcut menus that can be displayed when the user clicks the right mouse button over a control or area of the form. Menús contextuales se utilizan normalmente para combinar distintos elementos de menú de un MainMenu de un formulario que son útiles para el usuario dado el contexto de la aplicación.Shortcut menus are typically used to combine different menu items from a MainMenu of a form that are useful for the user given the context of the application. Por ejemplo, puede usar un menú contextual asignado a un TextBox control para proporcionar elementos de menú para cambiar la fuente del texto, buscar texto en el control, o funciones del Portapapeles para copiar y pegar texto.For example, you can use a shortcut menu assigned to a TextBox control to provide menu items for changing the font of the text, finding text within the control, or Clipboard features for copying and pasting text. También puede mostrar nuevas MenuItem objetos en un menú contextual que no se encuentran dentro de un MainMenu para proporcionar comandos específicos de situación que no son adecuados para el MainMenu para mostrar.You can also display new MenuItem objects in a shortcut menu that are not located within a MainMenu to provide situation specific commands that are not appropriate for the MainMenu to display.

Normalmente, se muestra un menú contextual cuando un usuario hace clic con el botón secundario del mouse sobre un control o el propio formulario.Typically, a shortcut menu is displayed when a user clicks the right mouse button over a control or the form itself. Los controles visibles y Form tiene un ContextMenu propiedad que se enlaza el ContextMenu clase para el control que muestra el menú contextual.Visible controls and Form have a ContextMenu property that binds the ContextMenu class to the control that displays the shortcut menu. Puede usar más de un control un ContextMenu.More than one control can use a ContextMenu. Puede usar el SourceControl propiedad para determinar qué control mostrado por última vez el menú contextual para llevar a cabo tareas específicas para el control o para modificar el menú contextual que se muestra en el control.You can use the SourceControl property to determine which control last displayed the shortcut menu in order to perform tasks specific to the control or to modify the shortcut menu displayed for the control.

Es posible que desee saber cuando se muestra el menú contextual con el fin de establecer marcas de verificación, deshabilitar elementos y realizar otras tareas de menú antes de que el menú se muestra al usuario.You might want to know when the shortcut menu is being displayed in order to set check marks, disable items, and perform other menu tasks before the menu is displayed to the user. Puede controlar la Popup evento para determinar cuándo se muestra el menú contextual.You can handle the Popup event to determine when the shortcut menu is being displayed.

Nota

Para poder reutilizar MenuItem objetos que se muestran en un MainMenu para su uso en un ContextMenu, debe crear una copia del menú mediante la CloneMenu método de la MenuItem clase.In order to reuse MenuItem objects that are displayed in a MainMenu for use in a ContextMenu, you must create a copy of the menu using the CloneMenu method of the MenuItem class. También puede combinar elementos de menú y sus elementos de submenú en un único MenuItem objeto utilizando el MergeMenu método de la MenuItem clase.You can also merge menu items and their submenu items into a single MenuItem object using the MergeMenu method of the MenuItem class.

Constructores

ContextMenu() ContextMenu() ContextMenu() ContextMenu()

Inicializa una nueva instancia de la clase ContextMenu sin elementos de menú especificados.Initializes a new instance of the ContextMenu class with no menu items specified.

ContextMenu(MenuItem[]) ContextMenu(MenuItem[]) ContextMenu(MenuItem[]) ContextMenu(MenuItem[])

Inicializa una nueva instancia de la clase ContextMenu con un conjunto especificado de objetos MenuItem.Initializes a new instance of the ContextMenu class with a specified set of MenuItem objects.

Propiedades

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Obtiene un valor que indica si el componente puede generar un evento.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container Container Container Container

Obtiene IContainer que contiene Component.Gets the IContainer that contains the Component.

(Inherited from Component)
DesignMode DesignMode DesignMode DesignMode

Obtiene un valor que indica si Component está actualmente en modo de diseño.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Obtiene la lista de controladores de eventos asociados a Component.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Handle Handle Handle Handle

Obtiene un valor que representa el identificador de ventana del menú.Gets a value representing the window handle for the menu.

(Inherited from Menu)
IsParent IsParent IsParent IsParent

Obtiene un valor que indica si este menú contiene elementos de menú.Gets a value indicating whether this menu contains any menu items. Esta propiedad es de sólo lectura.This property is read-only.

(Inherited from Menu)
MdiListItem MdiListItem MdiListItem MdiListItem

Obtiene un valor que indica la clase MenuItem que se utiliza para mostrar una lista de formularios secundarios de interfaz de múltiples documentos (MDI).Gets a value indicating the MenuItem that is used to display a list of multiple document interface (MDI) child forms.

(Inherited from Menu)
MenuItems MenuItems MenuItems MenuItems

Obtiene un valor que indica la colección de objetos MenuItem asociados al menú.Gets a value indicating the collection of MenuItem objects associated with the menu.

(Inherited from Menu)
Name Name Name Name

Obtiene o establece el nombre de Menu.Gets or sets the name of the Menu.

(Inherited from Menu)
RightToLeft RightToLeft RightToLeft RightToLeft

Obtiene o establece un valor que indica si el texto que muestra el control aparece de derecha a izquierda.Gets or sets a value indicating whether text displayed by the control is displayed from right to left.

Site Site Site Site

Obtiene o establece el ISite de Component.Gets or sets the ISite of the Component.

(Inherited from Component)
SourceControl SourceControl SourceControl SourceControl

Obtiene el control que muestra el menú contextual.Gets the control that is displaying the shortcut menu.

Tag Tag Tag Tag

Obtiene o establece los datos definidos por el usuario asociados con el control.Gets or sets user-defined data associated with the control.

(Inherited from Menu)

Métodos

CloneMenu(Menu) CloneMenu(Menu) CloneMenu(Menu) CloneMenu(Menu)

Copia el objeto Menu que se pasa como un parámetro al objeto Menu actual.Copies the Menu that is passed as a parameter to the current Menu.

(Inherited from Menu)
CreateMenuHandle() CreateMenuHandle() CreateMenuHandle() CreateMenuHandle()

Crea un nuevo identificador para Menu.Creates a new handle to the Menu.

(Inherited from Menu)
CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Libera todos los recursos que usa Component.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Se deshace de los recursos (distintos de la memoria) que usa Menu.Disposes of the resources, other than memory, used by the Menu.

(Inherited from Menu)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindMenuItem(Int32, IntPtr) FindMenuItem(Int32, IntPtr) FindMenuItem(Int32, IntPtr) FindMenuItem(Int32, IntPtr)

Obtiene el objeto MenuItem que contiene el valor especificado.Gets the MenuItem that contains the value specified.

(Inherited from Menu)
FindMergePosition(Int32) FindMergePosition(Int32) FindMergePosition(Int32) FindMergePosition(Int32)

Devuelve la posición en la que se debe insertar un elemento de menú.Returns the position at which a menu item should be inserted into the menu.

(Inherited from Menu)
GetContextMenu() GetContextMenu() GetContextMenu() GetContextMenu()

Obtiene el objeto ContextMenu que contiene este menú.Gets the ContextMenu that contains this menu.

(Inherited from Menu)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetMainMenu() GetMainMenu() GetMainMenu() GetMainMenu()

Obtiene el objeto MainMenu que contiene este menú.Gets the MainMenu that contains this menu.

(Inherited from Menu)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Devuelve un objeto que representa el servicio suministrado por Component o por Container.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
MergeMenu(Menu) MergeMenu(Menu) MergeMenu(Menu) MergeMenu(Menu)

Combina los objetos MenuItem de un menú en el menú actual.Merges the MenuItem objects of one menu with the current menu.

(Inherited from Menu)
OnCollapse(EventArgs) OnCollapse(EventArgs) OnCollapse(EventArgs) OnCollapse(EventArgs)

Genera el evento Collapse.Raises the Collapse event.

OnPopup(EventArgs) OnPopup(EventArgs) OnPopup(EventArgs) OnPopup(EventArgs)

Genera el evento Popup.Raises the Popup event

ProcessCmdKey(Message, Keys) ProcessCmdKey(Message, Keys) ProcessCmdKey(Message, Keys) ProcessCmdKey(Message, Keys)

Procesa una tecla de comando.Processes a command key.

(Inherited from Menu)
ProcessCmdKey(Message, Keys, Control) ProcessCmdKey(Message, Keys, Control) ProcessCmdKey(Message, Keys, Control) ProcessCmdKey(Message, Keys, Control)

Procesa una tecla de comando.Processes a command key.

Show(Control, Point) Show(Control, Point) Show(Control, Point) Show(Control, Point)

Muestra el menú contextual en la posición especificada.Displays the shortcut menu at the specified position.

Show(Control, Point, LeftRightAlignment) Show(Control, Point, LeftRightAlignment) Show(Control, Point, LeftRightAlignment) Show(Control, Point, LeftRightAlignment)

Muestra el menú contextual en la posición y con la alineación especificadas.Displays the shortcut menu at the specified position and with the specified alignment.

ToString() ToString() ToString() ToString()

Devuelve una cadena String que representa el control Menu.Returns a String that represents the Menu control.

(Inherited from Menu)

Eventos

Collapse Collapse Collapse Collapse

Se produce cuando se contrae el menú contextual.Occurs when the shortcut menu collapses.

Disposed Disposed Disposed Disposed

Se produce cuando el componente se elimina mediante una llamada al método Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
Popup Popup Popup Popup

Se produce antes de mostrarse el menú contextual.Occurs before the shortcut menu is displayed.

Campos

FindHandle FindHandle FindHandle FindHandle

Especifica que el método FindMenuItem(Int32, IntPtr) debe buscar un identificador.Specifies that the FindMenuItem(Int32, IntPtr) method should search for a handle.

(Inherited from Menu)
FindShortcut FindShortcut FindShortcut FindShortcut

Especifica que el método FindMenuItem(Int32, IntPtr) debe buscar un acceso directo.Specifies that the FindMenuItem(Int32, IntPtr) method should search for a shortcut.

(Inherited from Menu)

Se aplica a

Consulte también: