Udostępnij za pośrednictwem


ContextMenuService Klasa

Definicja

Udostępnia implementację systemu do wyświetlania elementu ContextMenu.

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

Przykłady

Poniższy przykład przypisuje te same ContextMenu przyciski do dwóch przycisków i ustawia HasDropShadowwłaściwości , Placement, PlacementRectangle, HorizontalOffseti VerticalOffset w celu ustawienia ContextMenu wartości na różne pozycje dla każdego przycisku.

<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>

W poniższym przykładzie pokazano, jak używać usługi do wyświetlania ContextMenu elementu na wyłączonym przycisku. Zwróć uwagę, że właściwość jest ShowOnDisabled ustawiona na przycisku, który jest elementem nadrzędnym menu kontekstowego.

<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>

Uwagi

Klasa ContextMenuService udostępnia dołączone właściwości, których można użyć do określenia wyglądu i położenia menu kontekstowego. Wiele właściwości w ContextMenuService klasie jest również zdefiniowanych przez element ContextMenu. Czasami bardziej wygodne jest ustawienie właściwości przy użyciu ContextMenuService klasy niż ustawienie właściwości w obiekcie ContextMenu. Można na przykład utworzyć element, który ContextMenu ma być współużytkowany przez wiele elementów, ale użyj ContextMenuService klasy , aby określić inną pozycję ContextMenu elementu dla każdego elementu. Następujące właściwości są definiowane ContextMenu przez klasy i ContextMenuService . Jeśli którakolwiek z tych właściwości jest ustawiona zarówno ContextMenu dla właściwości , jak ContextMenuServicei , zostanie użyta wartość właściwości .ContextMenuService

Możesz również użyć polecenia , ContextMenuService aby wyświetlić menu dla wyłączonych elementów.

Pola

ContextMenuClosingEvent

ContextMenuClosing Identyfikuje zdarzenie kierowane.

ContextMenuOpeningEvent

ContextMenuOpening Identyfikuje dołączone zdarzenie.

ContextMenuProperty

Identyfikuje dołączoną ContextMenu właściwość.

HasDropShadowProperty

Identyfikuje dołączoną HasDropShadow właściwość.

HorizontalOffsetProperty

Identyfikuje dołączoną HorizontalOffset właściwość.

IsEnabledProperty

Identyfikuje dołączoną IsEnabled właściwość.

PlacementProperty

Identyfikuje dołączoną Placement właściwość.

PlacementRectangleProperty

Identyfikuje dołączoną PlacementRectangle właściwość.

PlacementTargetProperty

Identyfikuje dołączoną PlacementTarget właściwość.

ShowOnDisabledProperty

Identyfikuje dołączoną ShowOnDisabled właściwość.

VerticalOffsetProperty

Identyfikuje dołączoną VerticalOffset właściwość.

Właściwości dołączone

ContextMenu

Pobiera lub ustawia zawartość obiektu ContextMenu.

HasDropShadow

Pobiera lub ustawia wartość, która wskazuje, czy ContextMenu jest włączony efekt cienia spadku.

HorizontalOffset

Pobiera lub ustawia wartość, która wskazuje, gdzie wzdłuż kierunku x umieścić ContextMenu element w odniesieniu do kontrolki nadrzędnej.

IsEnabled

Pobiera lub ustawia wartość wskazującą, czy ContextMenu można je wyświetlić.

Placement

Pobiera lub ustawia wartość, która określa położenie ContextMenu względem obiektu PlacementTarget lub PlacementRectangle.

PlacementRectangle

Pobiera lub ustawia obszar, względem którego menu kontekstowe jest ustawiane po otwarciu.

PlacementTarget

Pobiera lub ustawia nadrzędną kontrolkę obiektu ContextMenu.

ShowOnDisabled

Pobiera lub ustawia wartość, która wskazuje, czy ContextMenu element powinien być wyświetlany, gdy jego element nadrzędny jest wyszaryzowany.

VerticalOffset

Pobiera lub ustawia wartość, która wskazuje, gdzie wzdłuż kierunku y umieścić element ContextMenu w odniesieniu do kontrolki nadrzędnej.

Metody

AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Dodaje procedurę obsługi dla dołączonego ContextMenuClosing zdarzenia.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Dodaje procedurę obsługi dla dołączonego ContextMenuOpening zdarzenia.

GetContextMenu(DependencyObject)

Pobiera wartość ContextMenu właściwości określonego obiektu.

GetHasDropShadow(DependencyObject)

Pobiera wartość wskazującą, czy element ContextMenu ma cień.

GetHorizontalOffset(DependencyObject)

Pobiera wartość HorizontalOffset właściwości określonego obiektu.

GetIsEnabled(DependencyObject)

Pobiera wartość IsEnabled właściwości określonego obiektu.

GetPlacement(DependencyObject)

Pobiera wartość Placement właściwości określonego obiektu.

GetPlacementRectangle(DependencyObject)

Pobiera wartość PlacementRectangle właściwości określonego obiektu.

GetPlacementTarget(DependencyObject)

Pobiera wartość PlacementTarget właściwości określonego obiektu.

GetShowOnDisabled(DependencyObject)

Pobiera wartość ShowOnDisabled właściwości określonego obiektu.

GetVerticalOffset(DependencyObject)

Pobiera wartość VerticalOffset właściwości określonego obiektu.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Usuwa procedurę obsługi dołączonego ContextMenuClosing zdarzenia.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Usuwa procedurę obsługi dołączonego ContextMenuOpening zdarzenia.

SetContextMenu(DependencyObject, ContextMenu)

Ustawia wartość ContextMenu właściwości określonego obiektu.

SetHasDropShadow(DependencyObject, Boolean)

Ustawia wartość wskazującą, czy element ContextMenu ma cień.

SetHorizontalOffset(DependencyObject, Double)

Ustawia wartość HorizontalOffset właściwości określonego obiektu.

SetIsEnabled(DependencyObject, Boolean)

Ustawia wartość IsEnabled właściwości określonego obiektu.

SetPlacement(DependencyObject, PlacementMode)

Ustawia wartość Placement właściwości określonego obiektu.

SetPlacementRectangle(DependencyObject, Rect)

Ustawia wartość PlacementRectangle właściwości określonego obiektu.

SetPlacementTarget(DependencyObject, UIElement)

Ustawia wartość PlacementTarget właściwości określonego obiektu.

SetShowOnDisabled(DependencyObject, Boolean)

Ustawia wartość ShowOnDisabled właściwości określonego obiektu.

SetVerticalOffset(DependencyObject, Double)

Ustawia wartość VerticalOffset właściwości określonego obiektu.

Zdarzenia dołączone

ContextMenuClosing

Występuje po ContextMenu zamknięciu.

ContextMenuOpening

Występuje po otwarciu ContextMenu .

Dotyczy

Zobacz też