Compartir por


ContextMenu Clase

Definición

Precaución

ContextMenu is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use ContextMenuStrip instead.

Representa un menú contextual.

Esta clase no está disponible en .NET Core 3.1 y versiones posteriores. Use ContextMenuStrip en su lugar, que reemplaza y extiende el ContextMenu control.

public ref class ContextMenu : System::Windows::Forms::Menu
public class ContextMenu : System.Windows.Forms.Menu
[System.ComponentModel.Browsable(false)]
[System.Obsolete("`ContextMenu` is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use `ContextMenuStrip` instead.", false, DiagnosticId="WFDEV006", UrlFormat="https://aka.ms/winforms-warnings/{0}")]
public class ContextMenu : System.Windows.Forms.Menu
type ContextMenu = class
    inherit Menu
[<System.ComponentModel.Browsable(false)>]
[<System.Obsolete("`ContextMenu` is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use `ContextMenuStrip` instead.", false, DiagnosticId="WFDEV006", UrlFormat="https://aka.ms/winforms-warnings/{0}")>]
type ContextMenu = class
    inherit Menu
Public Class ContextMenu
Inherits Menu
Herencia
Atributos

Ejemplos

En el ejemplo de código siguiente se crea un controlador de eventos para el Popup evento de ContextMenu. El código del controlador de eventos determina cuál de dos controles un PictureBox denominado y un TextBox con nombre textBox1 es el control que muestra pictureBox1 el menú contextual. En función del control que provocó que ContextMenu mostrara su menú contextual, el control agrega los objetos adecuados MenuItem a .ContextMenu En este ejemplo se requiere que tenga una instancia de la ContextMenu clase , denominada contextMenu1, definida dentro del formulario. En este ejemplo también se requiere que tenga un TextBox y PictureBox agregado a un formulario y que la ContextMenu propiedad de estos controles esté establecida contextMenu1en .

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

Comentarios

Esta clase no está disponible en .NET Core 3.1 y versiones posteriores. Use ContextMenuStrip en su lugar.

La ContextMenu clase representa los menús contextuales que se pueden mostrar cuando el usuario hace clic en el botón derecho del mouse sobre un control o área del formulario. Normalmente, los menús contextuales se usan para combinar distintos elementos de menú de un MainMenu formulario que son útiles para el usuario dado el contexto de la aplicación. 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 dentro del control o características del Portapapeles para copiar y pegar texto. También puede mostrar nuevos MenuItem objetos en un menú contextual que no se encuentra dentro de para MainMenu proporcionar comandos específicos de la situación que no son adecuados para mostrar MainMenu .

Normalmente, se muestra un menú contextual cuando un usuario hace clic en el botón derecho del mouse sobre un control o el propio formulario. Los controles visibles y Form tienen una ContextMenu propiedad que enlaza la ContextMenu clase al control que muestra el menú contextual. Más de un control puede usar .ContextMenu Puede usar la SourceControl propiedad para determinar qué control mostró por última vez el menú contextual con el fin de realizar tareas específicas del control o modificar el menú contextual mostrado para el control.

Es posible que quiera saber cuándo se muestra el menú contextual para establecer marcas de verificación, deshabilitar elementos y realizar otras tareas de menú antes de que el menú se muestre al usuario. Puede controlar el Popup evento para determinar cuándo se muestra el menú contextual.

Nota:

Para reutilizar MenuItem objetos que se muestran en para MainMenu su uso en , ContextMenudebe crear una copia del menú mediante el CloneMenu método de la MenuItem clase . También puede combinar elementos de menú y sus elementos de submenú en un solo MenuItem objeto mediante el MergeMenu método de la MenuItem clase .

Constructores

Nombre Description
ContextMenu()
Obsoletos.

Inicializa una nueva instancia de la ContextMenu clase sin elementos de menú especificados.

ContextMenu(MenuItem[])
Obsoletos.

Inicializa una nueva instancia de la ContextMenu clase con un conjunto de MenuItem objetos especificado.

Campos

Nombre Description
FindHandle
Obsoletos.

Especifica que el FindMenuItem(Int32, IntPtr) método debe buscar un identificador.

(Heredado de Menu)
FindShortcut
Obsoletos.

Especifica que el FindMenuItem(Int32, IntPtr) método debe buscar un acceso directo.

(Heredado de Menu)

Propiedades

Nombre Description
CanRaiseEvents
Obsoletos.

Obtiene un valor que indica si el componente puede generar un evento.

(Heredado de Component)
Container
Obsoletos.

Obtiene el IContainer que contiene el Component.

(Heredado de Component)
DesignMode
Obsoletos.

Obtiene un valor que indica si el Component está actualmente en modo de diseño.

(Heredado de Component)
Events
Obsoletos.

Obtiene la lista de controladores de eventos que están asociados a este Component.

(Heredado de Component)
Handle
Obsoletos.

Obtiene un valor que representa el identificador de ventana del menú.

(Heredado de Menu)
IsParent
Obsoletos.

Obtiene un valor que indica si este menú contiene elementos de menú. Esta propiedad es de solo lectura.

(Heredado de Menu)
MdiListItem
Obsoletos.

Obtiene un valor que indica que MenuItem se usa para mostrar una lista de varios formularios secundarios de interfaz de documento (MDI).

(Heredado de Menu)
MenuItems
Obsoletos.

Obtiene un valor que indica la colección de MenuItem objetos asociados al menú.

(Heredado de Menu)
Name
Obsoletos.

Obtiene o establece el nombre de .Menu

(Heredado de Menu)
RightToLeft
Obsoletos.

Obtiene o establece un valor que indica si el texto mostrado por el control se muestra de derecha a izquierda.

Site
Obsoletos.

Obtiene o establece el ISite del Component.

(Heredado de Component)
SourceControl
Obsoletos.

Obtiene el control que muestra el menú contextual.

Tag
Obsoletos.

Obtiene o establece los datos definidos por el usuario asociados al control .

(Heredado de Menu)

Métodos

Nombre Description
CloneMenu(Menu)
Obsoletos.

Copia el Menu objeto que se pasa como un parámetro al objeto actual Menu.

(Heredado de Menu)
CreateMenuHandle()
Obsoletos.

Crea un nuevo identificador para .Menu

(Heredado de Menu)
CreateObjRef(Type)
Obsoletos.

Crea un objeto que contiene toda la información pertinente necesaria para generar un proxy usado para comunicarse con un objeto remoto.

(Heredado de MarshalByRefObject)
Dispose()
Obsoletos.

Libera todos los recursos usados por el Component.

(Heredado de Component)
Dispose(Boolean)
Obsoletos.

Elimina los recursos, distintos de la memoria, usados por .Menu

(Heredado de Menu)
Equals(Object)
Obsoletos.

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
FindMenuItem(Int32, IntPtr)
Obsoletos.

Obtiene el MenuItem objeto que contiene el valor especificado.

(Heredado de Menu)
FindMergePosition(Int32)
Obsoletos.

Devuelve la posición en la que se debe insertar un elemento de menú en el menú.

(Heredado de Menu)
GetContextMenu()
Obsoletos.

Obtiene el ContextMenu objeto que contiene este menú.

(Heredado de Menu)
GetHashCode()
Obsoletos.

Actúa como función hash predeterminada.

(Heredado de Object)
GetLifetimeService()
Obsoletos.

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
GetMainMenu()
Obsoletos.

Obtiene el MainMenu objeto que contiene este menú.

(Heredado de Menu)
GetService(Type)
Obsoletos.

Devuelve un objeto que representa un servicio proporcionado por el Component o por su Container.

(Heredado de Component)
GetType()
Obsoletos.

Obtiene el Type de la instancia actual.

(Heredado de Object)
InitializeLifetimeService()
Obsoletos.

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
MemberwiseClone()
Obsoletos.

Crea una copia superficial del Objectactual.

(Heredado de Object)
MemberwiseClone(Boolean)
Obsoletos.

Crea una copia superficial del objeto MarshalByRefObject actual.

(Heredado de MarshalByRefObject)
MergeMenu(Menu)
Obsoletos.

Combina los MenuItem objetos de un menú con el menú actual.

(Heredado de Menu)
OnCollapse(EventArgs)
Obsoletos.

Genera el evento Collapse.

OnPopup(EventArgs)
Obsoletos.

Genera el evento Popup.

ProcessCmdKey(Message, Keys, Control)
Obsoletos.

Procesa una clave de comando.

ProcessCmdKey(Message, Keys)
Obsoletos.

Procesa una clave de comando.

(Heredado de Menu)
Show(Control, Point, LeftRightAlignment)
Obsoletos.

Muestra el menú contextual en la posición especificada y con la alineación especificada.

Show(Control, Point)
Obsoletos.

Muestra el menú contextual en la posición especificada.

ToString()
Obsoletos.

Devuelve un String objeto que representa el Menu control .

(Heredado de Menu)

Eventos

Nombre Description
Collapse
Obsoletos.

Se produce cuando el menú contextual se contrae.

Disposed
Obsoletos.

Se produce cuando el componente se elimina mediante una llamada al método Dispose().

(Heredado de Component)
Popup
Obsoletos.

Se produce antes de que se muestre el menú contextual.

Se aplica a

Consulte también