Freigeben über


ContextMenuService Klasse

Definition

Stellt die Systemimplementierung zum Anzeigen einer .ContextMenu

public ref class ContextMenuService abstract sealed
public static class ContextMenuService
type ContextMenuService = class
Public Class ContextMenuService
Vererbung
ContextMenuService

Beispiele

Das folgende Beispiel weist zwei Schaltflächen dasselbe ContextMenu zu und legt die HasDropShadow, Placement, , PlacementRectangle, , HorizontalOffsetund VerticalOffset Eigenschaften fest, um die ContextMenu verschiedenen Positionen für jede Schaltfläche festzulegen.

<StackPanel>
  <StackPanel.Resources>
    <ContextMenu x:Key="myContextMenu">
      <MenuItem Header="Item"/>
    </ContextMenu>
  </StackPanel.Resources>

  <!--Both buttons use the same ContextMenu but use the
    properties on ContextMenuService to position them
    differently.-->
  <Button ContextMenu="{StaticResource myContextMenu}" 
          ContextMenuService.HasDropShadow="False" 
          ContextMenuService.Placement="Relative"
          ContextMenuService.HorizontalOffset="50"
          ContextMenuService.VerticalOffset="-10">
    button 1
  </Button>

  <Button ContextMenu="{StaticResource myContextMenu}" 
          ContextMenuService.HasDropShadow="True"
          ContextMenuService.Placement="Right"
          ContextMenuService.PlacementRectangle="0,0,30,30">
    button 2
  </Button>
</StackPanel>

Das folgende Beispiel zeigt, wie Sie den Dienst verwenden, um eine ContextMenu deaktivierte Schaltfläche anzuzeigen. Beachten Sie, dass Sie die Eigenschaft für die ShowOnDisabled Schaltfläche festlegen, die das übergeordnete Element des Kontextmenüs ist.

<Button Height="30" Content="Disabled Button" IsEnabled="False" 
     ContextMenuService.ShowOnDisabled="True">
  <Button.ContextMenu>
    <ContextMenu>
      <MenuItem Header="Item 1"/>
      <MenuItem Header="Item 2"/>
      <MenuItem Header="Item 3"/>
    </ContextMenu>
  </Button.ContextMenu>
</Button>

Hinweise

Die ContextMenuService Klasse stellt angefügte Eigenschaften bereit, die zum Angeben der Darstellung und Position eines Kontextmenüs verwendet werden können. Viele der Eigenschaften in der ContextMenuService Klasse werden auch durch die ContextMenu. Manchmal ist es bequemer, die Eigenschaften mithilfe der ContextMenuService Klasse festzulegen, als durch Festlegen der Eigenschaften für eine ContextMenu. Sie können z. B. ein ContextMenu Element erstellen, das von mehreren Elementen gemeinsam verwendet werden soll, aber verwenden Sie die ContextMenuService Klasse, um eine andere Position der ContextMenu einzelnen Elemente anzugeben. Die folgenden Eigenschaften werden von den ContextMenu Klassen definiert ContextMenuService . Wenn eine dieser Eigenschaften für beide Eigenschaften ContextMenu und den ContextMenuServiceWert der Eigenschaft verwendet wird, wird der Eigenschaftswert ContextMenuService verwendet.

Sie können auch die ContextMenuService Menüs für deaktivierte Elemente anzeigen.

Felder

Name Beschreibung
ContextMenuClosingEvent

Identifiziert das ContextMenuClosing Routingereignis.

ContextMenuOpeningEvent

Identifiziert das ContextMenuOpening angefügte Ereignis.

ContextMenuProperty

Identifies the ContextMenu attached property.

HasDropShadowProperty

Identifies the HasDropShadow attached property.

HorizontalOffsetProperty

Identifies the HorizontalOffset attached property.

IsEnabledProperty

Identifies the IsEnabled attached property.

PlacementProperty

Identifies the Placement attached property.

PlacementRectangleProperty

Identifies the PlacementRectangle attached property.

PlacementTargetProperty

Identifies the PlacementTarget attached property.

ShowOnDisabledProperty

Identifies the ShowOnDisabled attached property.

VerticalOffsetProperty

Identifies the VerticalOffset attached property.

Angefügte Eigenschaften

Name Beschreibung
ContextMenu

Dient zum Abrufen oder Festlegen des Inhalts eines .ContextMenu

HasDropShadow

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob der ContextMenu Schlagschatteneffekt aktiviert ist.

HorizontalOffset

Dient zum Abrufen oder Festlegen eines Werts, der angibt, wo entlang der x-Richtung die ContextMenu Position im Hinblick auf das übergeordnete Steuerelement platziert werden soll.

IsEnabled

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob dies ContextMenu angezeigt werden kann.

Placement

Dient zum Abrufen oder Festlegen eines Werts, der die Platzierung der ContextMenu relativen zum PlacementTarget oder PlacementRectangle.

PlacementRectangle

Dient zum Abrufen oder Festlegen des Bereichs relativ zu dem das Kontextmenü positioniert wird, wenn es geöffnet wird.

PlacementTarget

Dient zum Abrufen oder Festlegen des übergeordneten Steuerelements der .ContextMenu

ShowOnDisabled

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das ContextMenu übergeordnete Element angezeigt werden soll, wenn das übergeordnete Element abgeblendet ist.

VerticalOffset

Dient zum Abrufen oder Festlegen eines Werts, der angibt, wo entlang der y-Richtung die ContextMenu Position im Hinblick auf das übergeordnete Steuerelement platziert werden soll.

Methoden

Name Beschreibung
AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Fügt einen Handler für das ContextMenuClosing angefügte Ereignis hinzu.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Fügt einen Handler für das ContextMenuOpening angefügte Ereignis hinzu.

GetContextMenu(DependencyObject)

Ruft den Wert der ContextMenu Eigenschaft des angegebenen Objekts ab.

GetHasDropShadow(DependencyObject)

Ruft einen Wert ab, der angibt, ob der ContextMenu Schlagschatten aufweist.

GetHorizontalOffset(DependencyObject)

Ruft den Wert der HorizontalOffset Eigenschaft des angegebenen Objekts ab.

GetIsEnabled(DependencyObject)

Ruft den Wert der IsEnabled Eigenschaft des angegebenen Objekts ab.

GetPlacement(DependencyObject)

Ruft den Wert der Placement Eigenschaft des angegebenen Objekts ab.

GetPlacementRectangle(DependencyObject)

Ruft den Wert der PlacementRectangle Eigenschaft des angegebenen Objekts ab.

GetPlacementTarget(DependencyObject)

Ruft den Wert der PlacementTarget Eigenschaft des angegebenen Objekts ab.

GetShowOnDisabled(DependencyObject)

Ruft den Wert der ShowOnDisabled Eigenschaft des angegebenen Objekts ab.

GetVerticalOffset(DependencyObject)

Ruft den Wert der VerticalOffset Eigenschaft des angegebenen Objekts ab.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Entfernt einen Handler für das ContextMenuClosing angefügte Ereignis.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Entfernt einen Handler für das ContextMenuOpening angefügte Ereignis.

SetContextMenu(DependencyObject, ContextMenu)

Legt den Wert der ContextMenu Eigenschaft des angegebenen Objekts fest.

SetHasDropShadow(DependencyObject, Boolean)

Legt einen Wert fest, der angibt, ob der ContextMenu Schlagschatten aufweist.

SetHorizontalOffset(DependencyObject, Double)

Legt den Wert der HorizontalOffset Eigenschaft des angegebenen Objekts fest.

SetIsEnabled(DependencyObject, Boolean)

Legt den Wert der IsEnabled Eigenschaft des angegebenen Objekts fest.

SetPlacement(DependencyObject, PlacementMode)

Legt den Wert der Placement Eigenschaft des angegebenen Objekts fest.

SetPlacementRectangle(DependencyObject, Rect)

Legt den Wert der PlacementRectangle Eigenschaft des angegebenen Objekts fest.

SetPlacementTarget(DependencyObject, UIElement)

Legt den Wert der PlacementTarget Eigenschaft des angegebenen Objekts fest.

SetShowOnDisabled(DependencyObject, Boolean)

Legt den Wert der ShowOnDisabled Eigenschaft des angegebenen Objekts fest.

SetVerticalOffset(DependencyObject, Double)

Legt den Wert der VerticalOffset Eigenschaft des angegebenen Objekts fest.

Angefügte Ereignisse

Name Beschreibung
ContextMenuClosing

Tritt auf, wenn die ContextMenu Schließung erfolgt.

ContextMenuOpening

Tritt auf, wenn das ContextMenu Öffnen erfolgt.

Gilt für:

Weitere Informationen