Partilhar via


ContextMenu Classe

Definição

Cuidado

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

Representa um menu de atalho.

Essa classe não está disponível no .NET Core 3.1 e versões posteriores. Em vez disso, use ContextMenuStrip o que substitui e estende o ContextMenu controle.

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
Herança
Atributos

Exemplos

O exemplo de código a ContextMenuseguir cria um manipulador de eventos para o Popup evento do . O código no manipulador de eventos determina qual dos dois controles um PictureBox nomeado pictureBox1 e um TextBox nomeado textBox1 é o controle que exibe o menu de atalho. Dependendo de qual controle causou a exibição de ContextMenu seu menu de atalho, o controle adiciona os objetos apropriados MenuItem ao ContextMenu. Este exemplo requer que você tenha uma instância da ContextMenu classe, nomeada contextMenu1, definida dentro do formulário. Este exemplo também exige que você tenha um TextBox formulário e PictureBox adicionado a um formulário e que a ContextMenu propriedade desses controles seja definida como 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

Comentários

Essa classe não está disponível no .NET Core 3.1 e versões posteriores. Use ContextMenuStrip em seu lugar.

A ContextMenu classe representa menus de atalho que podem ser exibidos quando o usuário clica no botão direito do mouse sobre um controle ou área do formulário. Os menus de atalho normalmente são usados para combinar diferentes itens de menu de um MainMenu formulário que são úteis para o usuário, considerando o contexto do aplicativo. Por exemplo, você pode usar um menu de atalho atribuído a um TextBox controle para fornecer itens de menu para alterar a fonte do texto, encontrar texto dentro do controle ou recursos de área de transferência para copiar e colar texto. Você também pode exibir novos MenuItem objetos em um menu de atalho que não estão localizados em um MainMenu para fornecer comandos específicos de situação que não são apropriados para exibição MainMenu .

Normalmente, um menu de atalho é exibido quando um usuário clica no botão direito do mouse sobre um controle ou o próprio formulário. Controles visíveis e Form uma ContextMenu propriedade que associa a ContextMenu classe ao controle que exibe o menu de atalho. Mais de um controle pode usar um ContextMenu. Você pode usar a SourceControl propriedade para determinar qual controle exibiu o menu de atalho pela última vez para executar tarefas específicas ao controle ou modificar o menu de atalho exibido para o controle.

Talvez você queira saber quando o menu de atalho está sendo exibido para definir marcas de seleção, desabilitar itens e executar outras tarefas de menu antes que o menu seja exibido para o usuário. Você pode manipular o Popup evento para determinar quando o menu de atalho está sendo exibido.

Observação

Para reutilizar MenuItem objetos exibidos em um MainMenu para uso em um ContextMenu, você deve criar uma cópia do menu usando o CloneMenu método da MenuItem classe. Você também pode mesclar itens de menu e seus itens de submenu em um único MenuItem objeto usando o MergeMenu método da MenuItem classe.

Construtores

Nome Description
ContextMenu()
Obsoleto.

Inicializa uma nova instância da ContextMenu classe sem itens de menu especificados.

ContextMenu(MenuItem[])
Obsoleto.

Inicializa uma nova instância da ContextMenu classe com um conjunto MenuItem de objetos especificado.

Campos

Nome Description
FindHandle
Obsoleto.

Especifica que o FindMenuItem(Int32, IntPtr) método deve procurar um identificador.

(Herdado de Menu)
FindShortcut
Obsoleto.

Especifica que o FindMenuItem(Int32, IntPtr) método deve procurar um atalho.

(Herdado de Menu)

Propriedades

Nome Description
CanRaiseEvents
Obsoleto.

Obtém um valor que indica se o componente pode gerar um evento.

(Herdado de Component)
Container
Obsoleto.

Obtém o IContainer que contém o Component.

(Herdado de Component)
DesignMode
Obsoleto.

Obtém um valor que indica se o Component está no modo de design no momento.

(Herdado de Component)
Events
Obsoleto.

Obtém a lista de manipuladores de eventos anexados a isso Component.

(Herdado de Component)
Handle
Obsoleto.

Obtém um valor que representa o identificador de janela do menu.

(Herdado de Menu)
IsParent
Obsoleto.

Obtém um valor que indica se este menu contém itens de menu. Esta propriedade é somente para leitura.

(Herdado de Menu)
MdiListItem
Obsoleto.

Obtém um valor que indica o MenuItem que é usado para exibir uma lista de vários formulários filho da MDI (interface do documento).

(Herdado de Menu)
MenuItems
Obsoleto.

Obtém um valor que indica a coleção de MenuItem objetos associados ao menu.

(Herdado de Menu)
Name
Obsoleto.

Obtém ou define o nome do Menu.

(Herdado de Menu)
RightToLeft
Obsoleto.

Obtém ou define um valor que indica se o texto exibido pelo controle é exibido da direita para a esquerda.

Site
Obsoleto.

Obtém ou define o ISiteComponent.

(Herdado de Component)
SourceControl
Obsoleto.

Obtém o controle que está exibindo o menu de atalho.

Tag
Obsoleto.

Obtém ou define dados definidos pelo usuário associados ao controle.

(Herdado de Menu)

Métodos

Nome Description
CloneMenu(Menu)
Obsoleto.

Copia o Menu que é passado como um parâmetro para o atual Menu.

(Herdado de Menu)
CreateMenuHandle()
Obsoleto.

Cria um novo identificador para o Menu.

(Herdado de Menu)
CreateObjRef(Type)
Obsoleto.

Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()
Obsoleto.

Libera todos os recursos usados pelo Component.

(Herdado de Component)
Dispose(Boolean)
Obsoleto.

Descarta os recursos, exceto a memória, usados Menupelo .

(Herdado de Menu)
Equals(Object)
Obsoleto.

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FindMenuItem(Int32, IntPtr)
Obsoleto.

Obtém o MenuItem que contém o valor especificado.

(Herdado de Menu)
FindMergePosition(Int32)
Obsoleto.

Retorna a posição na qual um item de menu deve ser inserido no menu.

(Herdado de Menu)
GetContextMenu()
Obsoleto.

Obtém o ContextMenu que contém este menu.

(Herdado de Menu)
GetHashCode()
Obsoleto.

Serve como a função de hash padrão.

(Herdado de Object)
GetLifetimeService()
Obsoleto.

Recupera o objeto de serviço de tempo de vida atual que controla a política de tempo de vida para essa instância.

(Herdado de MarshalByRefObject)
GetMainMenu()
Obsoleto.

Obtém o MainMenu que contém este menu.

(Herdado de Menu)
GetService(Type)
Obsoleto.

Retorna um objeto que representa um serviço fornecido pelo Component ou por sua Container.

(Herdado de Component)
GetType()
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()
Obsoleto.

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida dessa instância.

(Herdado de MarshalByRefObject)
MemberwiseClone()
Obsoleto.

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
MemberwiseClone(Boolean)
Obsoleto.

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
MergeMenu(Menu)
Obsoleto.

Mescla os MenuItem objetos de um menu com o menu atual.

(Herdado de Menu)
OnCollapse(EventArgs)
Obsoleto.

Aciona o evento Collapse.

OnPopup(EventArgs)
Obsoleto.

Aciona o evento Popup.

ProcessCmdKey(Message, Keys, Control)
Obsoleto.

Processa uma chave de comando.

ProcessCmdKey(Message, Keys)
Obsoleto.

Processa uma chave de comando.

(Herdado de Menu)
Show(Control, Point, LeftRightAlignment)
Obsoleto.

Exibe o menu de atalho na posição especificada e com o alinhamento especificado.

Show(Control, Point)
Obsoleto.

Exibe o menu de atalho na posição especificada.

ToString()
Obsoleto.

Retorna um String que representa o Menu controle.

(Herdado de Menu)

Eventos

Nome Description
Collapse
Obsoleto.

Ocorre quando o menu de atalho é recolhido.

Disposed
Obsoleto.

Ocorre quando o componente é descartado por uma chamada para o Dispose() método.

(Herdado de Component)
Popup
Obsoleto.

Ocorre antes que o menu de atalho seja exibido.

Aplica-se a

Confira também