Exportieren (0) Drucken
Alle erweitern

ContextMenu-Klasse

Aktualisiert: November 2007

Stellt ein Popupmenü dar, mit dem ein Steuerelement Funktionen verfügbar machen kann, die spezifisch für den Kontext des Steuerelements sind.

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS für XAML: http://schemas.microsoft.com/winfx/xaml/presentation

public class ContextMenu : MenuBase
public class ContextMenu extends MenuBase
public class ContextMenu extends MenuBase
<ContextMenu>
  Items
</ContextMenu>

Inhaltsmodell: ContextMenu ist ein ItemsControl. Die Inhaltseigenschaften sind Items und ItemsSource. Weitere Informationen zum Inhaltsmodell für ContextMenu finden Sie unter Übersicht über Inhaltsmodelle für Steuerelemente.

Mit den Eigenschaften der ContextMenu-Klasse werden die Position und das Verhalten des ContextMenu definiert.

Ein FrameworkElement bzw. FrameworkContentElement kann über ein ContextMenu verfügen. Wenn Sie der FrameworkElement.ContextMenu-Eigenschaft oder zur FrameworkContentElement.ContextMenu-Eigenschaft ein ContextMenu zuweisen, behandelt die ContextMenuService-Klasse Kontextmenüvorgänge als Reaktion auf Benutzereingaben. Ein Teil des vom ContextMenuService ausgeführten Vorgangs besteht im Öffnen des ContextMenu, wenn der Benutzer über dem Steuerelement mit der rechten Maustaste klickt.

Die folgenden Eigenschaften werden von der ContextMenu-Klasse und der ContextMenuService-Klasse festgelegt. Wenn eine dieser Eigenschaften sowohl für ContextMenu als auch für den ContextMenuService festgelegt wird, wird der Eigenschaftenwert vom ContextMenuService verwendet.

Ein ContextMenu wird automatisch in einem Popup-Steuerelement platziert. Dieses Verhalten kann nicht geändert werden.

In den folgenden Beispielen wird das Erstellen eines ContextMenu veranschaulicht.

<Button Name="cmButton" Height="30">
  Button with Context Menu
  <Button.ContextMenu>
    <ContextMenu Name="cm" Opened="OnOpened" Closed="OnClosed" StaysOpen="true">
      <MenuItem Header="File"/>
      <MenuItem Header="Save"/>
      <MenuItem Header="SaveAs"/>
      <MenuItem Header="Recent Files">
        <MenuItem Header="ReadMe.txt"/>
        <MenuItem Header="Schedule.xls"/>
      </MenuItem>
    </ContextMenu>
  </Button.ContextMenu>
</Button>


btn = new Button();
btn.Content = "Created with C#";
contextmenu = new ContextMenu();
btn.ContextMenu = contextmenu;
mi = new MenuItem();
mi.Header = "File";
mia = new MenuItem();
mia.Header = "New";
mi.Items.Add(mia);
mib = new MenuItem();
mib.Header = "Open";
mi.Items.Add(mib);
mib1 = new MenuItem();
mib1.Header = "Recently Opened";
mib.Items.Add(mib1);
mib1a = new MenuItem();
mib1a.Header = "Text.xaml";
mib1.Items.Add(mib1a);
contextmenu.Items.Add(mi);
cv2.Children.Add(btn);


System.Object
  System.Windows.Threading.DispatcherObject
    System.Windows.DependencyObject
      System.Windows.Media.Visual
        System.Windows.UIElement
          System.Windows.FrameworkElement
            System.Windows.Controls.Control
              System.Windows.Controls.ItemsControl
                System.Windows.Controls.Primitives.MenuBase
                  System.Windows.Controls.ContextMenu

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2015 Microsoft