ContextMenu Class

Definition

Stellt ein Kontextmenü dar.Represents a shortcut menu. Obwohl ContextMenuStrip das ContextMenu-Steuerelement vorheriger Versionen ersetzt und funktionell erweitert, wird das ContextMenu-Steuerelement sowohl aus Gründen der Abwärtskompatibilität als auch, falls gewünscht, für die zukünftige Verwendung beibehalten.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
Inheritance

Examples

Im folgenden Codebeispiel wird ein Ereignishandler für das Popup-Ereignis der-ContextMenuerstellt.The following code example creates an event handler for the Popup event of the ContextMenu. Der Code im-Ereignishandler bestimmt, welche der beiden Steuerelemente eine PictureBox mit dem Namen pictureBox1 und eine TextBox benannte textBox1 das Steuerelement, das das Kontextmenü anzeigt.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. Abhängig davon, welches Steuerelement bewirkt hat, dass der ContextMenu das Kontextmenü anzeigt, fügt das Steuerelement dem ContextMenudie entsprechenden MenuItem Objekte hinzu.Depending on which control caused the ContextMenu to display its shortcut menu, the control adds the appropriate MenuItem objects to the ContextMenu. Für dieses Beispiel ist es erforderlich, dass Sie über eine Instanz der ContextMenu-Klasse mit dem Namen contextMenu1verfügen, die im Formular definiert ist.This example requires that you have an instance of the ContextMenu class, named contextMenu1, defined within the form. Dieses Beispiel erfordert auch, dass Sie über ein TextBox verfügen und einem Formular hinzugefügt PictureBox und dass die ContextMenu-Eigenschaft dieser Steuerelemente auf contextMenu1festgelegt ist.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

Remarks

Die ContextMenu-Klasse stellt Kontextmenüs dar, die angezeigt werden können, wenn der Benutzer mit der rechten Maustaste auf ein Steuerelement oder einen Bereich des Formulars klickt.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. Kontextmenüs werden in der Regel verwendet, um unterschiedliche Menü Elemente aus einer MainMenu eines Formulars zu kombinieren, die für den Benutzer hilfreich sind, wenn der Kontext der Anwendung verwendet wird.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. Beispielsweise können Sie ein einem TextBox Steuerelement zugewiesenes Kontextmenü verwenden, um Menü Elemente zum Ändern der Schriftart des Texts, zum Suchen von Text innerhalb des Steuer Elements oder Zwischenablage Funktionen zum Kopieren und Einfügen von Text bereitzustellen.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. Sie können auch neue MenuItem Objekte in einem Kontextmenü anzeigen, die sich nicht in einem MainMenu befinden, um bestimmte Befehle bereitzustellen, die für die Anzeige der MainMenu nicht geeignet sind.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.

In der Regel wird ein Kontextmenü angezeigt, wenn ein Benutzer mit der rechten Maustaste auf ein Steuerelement oder das Formular selbst klickt.Typically, a shortcut menu is displayed when a user clicks the right mouse button over a control or the form itself. Sichtbare Steuerelemente und Form verfügen über eine ContextMenu-Eigenschaft, die die ContextMenu-Klasse an das Steuerelement bindet, das das Kontextmenü anzeigt.Visible controls and Form have a ContextMenu property that binds the ContextMenu class to the control that displays the shortcut menu. Mehr als ein Steuerelement kann eine ContextMenuverwenden.More than one control can use a ContextMenu. Sie können die SourceControl-Eigenschaft verwenden, um zu bestimmen, welches Steuerelement zuletzt das Kontextmenü angezeigt hat, um spezielle Aufgaben für das Steuerelement auszuführen oder das für das Steuerelement angezeigte Kontextmenü zu ändern.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.

Möglicherweise möchten Sie wissen, wann das Kontextmenü angezeigt wird, um Häkchen festzulegen, Elemente zu deaktivieren und andere Menü Aufgaben auszuführen, bevor dem Benutzer das Menü angezeigt wird.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. Sie können das Popup-Ereignis behandeln, um zu bestimmen, wann das Kontextmenü angezeigt wird.You can handle the Popup event to determine when the shortcut menu is being displayed.

Note

Um MenuItem Objekte wiederzuverwenden, die in einem MainMenu zur Verwendung in einem ContextMenuangezeigt werden, müssen Sie eine Kopie des Menüs erstellen, indem Sie die CloneMenu-Methode der MenuItem-Klasse verwenden.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. Sie können Menü Elemente und ihre unter Menü Elemente auch mit der MergeMenu-Methode der MenuItem-Klasse in einem einzelnen MenuItem Objekt zusammenführen.You can also merge menu items and their submenu items into a single MenuItem object using the MergeMenu method of the MenuItem class.

Constructors

ContextMenu()

Initialisiert eine neue Instanz der ContextMenu-Klasse ohne Angabe von Menüelementen.Initializes a new instance of the ContextMenu class with no menu items specified.

ContextMenu(MenuItem[])

Initialisiert eine neue Instanz der ContextMenu-Klasse mit dem angegebenen Satz von MenuItem-Objekten.Initializes a new instance of the ContextMenu class with a specified set of MenuItem objects.

Fields

FindHandle

Gibt an, dass die FindMenuItem(Int32, IntPtr)-Methode nach einem Handle suchen soll.Specifies that the FindMenuItem(Int32, IntPtr) method should search for a handle.

(Inherited from Menu)
FindShortcut

Gibt an, dass die FindMenuItem(Int32, IntPtr)-Methode nach einer Verknüpfung suchen soll.Specifies that the FindMenuItem(Int32, IntPtr) method should search for a shortcut.

(Inherited from Menu)

Properties

CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container

Ruft die IContainer ab, die in der Component enthalten ist.Gets the IContainer that contains the Component.

(Inherited from Component)
DesignMode

Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events

Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Handle

Ruft einen Wert ab, der das Fensterhandle für das Menü darstellt.Gets a value representing the window handle for the menu.

(Inherited from Menu)
IsParent

Ruft einen Wert ab, der angibt, ob dieses Menü Menüelemente enthält.Gets a value indicating whether this menu contains any menu items. Diese Eigenschaft ist schreibgeschützt.This property is read-only.

(Inherited from Menu)
MdiListItem

Ruft einen Wert ab, der das MenuItem angibt, mit dem eine Liste von untergeordneten MDI-Formularen (Multiple Document Interface) angezeigt wird.Gets a value indicating the MenuItem that is used to display a list of multiple document interface (MDI) child forms.

(Inherited from Menu)
MenuItems

Ruft einen Wert ab, der die Auflistung der dem Menü zugeordneten MenuItem-Objekte angibt.Gets a value indicating the collection of MenuItem objects associated with the menu.

(Inherited from Menu)
Name

Ruft den Namen von Menu ab oder legt ihn fest.Gets or sets the name of the Menu.

(Inherited from Menu)
RightToLeft

Ruft einen Wert ab, der angibt, ob der Text im Steuerelement von rechts nach links angezeigt wird, oder legt diesen fest.Gets or sets a value indicating whether text displayed by the control is displayed from right to left.

Site

Ruft den ISite von Component ab oder legt ihn fest.Gets or sets the ISite of the Component.

(Inherited from Component)
SourceControl

Ruft das Steuerelement ab, das das Kontextmenü anzeigt.Gets the control that is displaying the shortcut menu.

Tag

Ruft benutzerdefinierte, dem Steuerelement zugeordnete Daten ab oder legt diese fest.Gets or sets user-defined data associated with the control.

(Inherited from Menu)

Methods

CloneMenu(Menu)

Kopiert das Menu, das als Parameter an das aktuelle Menu übergeben wird.Copies the Menu that is passed as a parameter to the current Menu.

(Inherited from Menu)
CreateMenuHandle()

Erstellt ein neues Handle für Menu.Creates a new handle to the Menu.

(Inherited from Menu)
CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.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()

Gibt alle von Component verwendeten Ressourcen frei.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean)

Gibt mit Ausnahme des Speichers die von der Menu-Klasse verwendeten Ressourcen frei.Disposes of the resources, other than memory, used by the Menu.

(Inherited from Menu)
Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindMenuItem(Int32, IntPtr)

Ruft das MenuItem ab, das den angegebenen Wert enthält.Gets the MenuItem that contains the value specified.

(Inherited from Menu)
FindMergePosition(Int32)

Gibt die Position zurück, an der ein Menüelement in das Menü eingefügt werden soll.Returns the position at which a menu item should be inserted into the menu.

(Inherited from Menu)
GetContextMenu()

Ruft das ContextMenu ab, das dieses Menü enthält.Gets the ContextMenu that contains this menu.

(Inherited from Menu)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetMainMenu()

Ruft das MainMenu ab, das dieses Menü enthält.Gets the MainMenu that contains this menu.

(Inherited from Menu)
GetService(Type)

Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
MergeMenu(Menu)

Führt die MenuItem-Objekte eines Menüs mit dem aktuellen Menü zusammen.Merges the MenuItem objects of one menu with the current menu.

(Inherited from Menu)
OnCollapse(EventArgs)

Löst das Collapse-Ereignis aus.Raises the Collapse event.

OnPopup(EventArgs)

Löst das Popup-Ereignis aus.Raises the Popup event.

ProcessCmdKey(Message, Keys)

Verarbeitet eine Befehlstaste.Processes a command key.

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

Verarbeitet eine Befehlstaste.Processes a command key.

Show(Control, Point)

Zeigt das Kontextmenü an der angegebenen Position an.Displays the shortcut menu at the specified position.

Show(Control, Point, LeftRightAlignment)

Zeigt das Kontextmenü an der angegebenen Position und mit der angegebenen Ausrichtung an.Displays the shortcut menu at the specified position and with the specified alignment.

ToString()

Gibt einen String zurück, der das Menu-Steuerelement darstellt.Returns a String that represents the Menu control.

(Inherited from Menu)

Events

Collapse

Tritt ein, wenn das Kontextmenü geschlossen wird.Occurs when the shortcut menu collapses.

Disposed

Tritt auf, wenn die Komponente von einem Aufruf der Dispose()-Methode verworfen wird.Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
Popup

Tritt ein, bevor das Kontextmenü angezeigt wird.Occurs before the shortcut menu is displayed.

Applies to

See also