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.
Assembly: PresentationFramework (in PresentationFramework.dll)
XMLNS für XAML: http://schemas.microsoft.com/winfx/xaml/presentation
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.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
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.