Sdílet prostřednictvím


ContextMenuService Třída

Definice

Poskytuje implementaci systému pro zobrazení .ContextMenu

public ref class ContextMenuService abstract sealed
public static class ContextMenuService
type ContextMenuService = class
Public Class ContextMenuService
Dědičnost
ContextMenuService

Příklady

Následující příklad přiřadí totéž ContextMenu ke dvěma tlačítkům a nastaví HasDropShadowvlastnosti , PlacementRectanglePlacement, , HorizontalOffseta VerticalOffset tak, aby se pro každé tlačítko nastavily ContextMenu na jinou pozici.

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

Následující příklad ukazuje, jak použít službu k zobrazení ContextMenu na zakázaném tlačítku. Všimněte si, že jste nastavili ShowOnDisabled vlastnost na tlačítku, které je nadřazené místní nabídce.

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

Poznámky

Třída ContextMenuService poskytuje připojené vlastnosti, které lze použít k určení vzhledu a umístění místní nabídky. Mnoho vlastností ve ContextMenuService třídě je také definováno objektem ContextMenu. Někdy je vhodnější nastavit vlastnosti pomocí ContextMenuService třídy než nastavením vlastností na ContextMenu. Můžete například vytvořit sdílenou ContextMenu více elementy, ale použít ContextMenuService třídu k určení jiné pozice ContextMenu prvku pro každý prvek. Následující vlastnosti jsou definovány třídami ContextMenu a ContextMenuService . Pokud je některá z těchto vlastností nastavena pro i ContextMenuContextMenuService, použije se hodnota vlastnosti z ContextMenuService .

Můžete také použít k ContextMenuService zobrazení nabídek u zakázaných položek.

Pole

ContextMenuClosingEvent

Identifikuje ContextMenuClosing směrovanou událost.

ContextMenuOpeningEvent

Identifikuje přidruženou ContextMenuOpening událost.

ContextMenuProperty

Identifikuje přidruženou ContextMenu vlastnost.

HasDropShadowProperty

Identifikuje přidruženou HasDropShadow vlastnost.

HorizontalOffsetProperty

Identifikuje přidruženou HorizontalOffset vlastnost.

IsEnabledProperty

Identifikuje přidruženou IsEnabled vlastnost.

PlacementProperty

Identifikuje přidruženou Placement vlastnost.

PlacementRectangleProperty

Identifikuje přidruženou PlacementRectangle vlastnost.

PlacementTargetProperty

Identifikuje přidruženou PlacementTarget vlastnost.

ShowOnDisabledProperty

Identifikuje přidruženou ShowOnDisabled vlastnost.

VerticalOffsetProperty

Identifikuje přidruženou VerticalOffset vlastnost.

Přidružené vlastnosti

ContextMenu

Získá nebo nastaví obsah objektu ContextMenu.

HasDropShadow

Získá nebo nastaví hodnotu, která označuje, zda ContextMenu má efekt stínu povoleno.

HorizontalOffset

Získá nebo nastaví hodnotu, která určuje, kam podél směru x umístit ContextMenu s ohledem na nadřazený ovládací prvek.

IsEnabled

Získá nebo nastaví hodnotu, která označuje, zda ContextMenu lze zobrazit.

Placement

Získá nebo nastaví hodnotu, která určuje umístění relativní PlacementTarget k ContextMenu nebo PlacementRectangle.

PlacementRectangle

Získá nebo nastaví oblast vzhledem k umístění místní nabídky při otevření.

PlacementTarget

Získá nebo nastaví nadřazený ContextMenuovládací prvek .

ShowOnDisabled

Získá nebo nastaví hodnotu, která označuje, zda ContextMenu má být zobrazena, když nadřazený je neaktivní.

VerticalOffset

Získá nebo nastaví hodnotu, která určuje, kam podél směru y umístit ContextMenu s ohledem na nadřazený ovládací prvek.

Metody

AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Přidá obslužnou rutinu pro připojenou ContextMenuClosing událost.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Přidá obslužnou rutinu pro připojenou ContextMenuOpening událost.

GetContextMenu(DependencyObject)

Získá hodnotu ContextMenu vlastnosti zadaného objektu.

GetHasDropShadow(DependencyObject)

Získá hodnotu, která označuje, zda ContextMenu má stín.

GetHorizontalOffset(DependencyObject)

Získá hodnotu HorizontalOffset vlastnosti zadaného objektu.

GetIsEnabled(DependencyObject)

Získá hodnotu IsEnabled vlastnosti zadaného objektu.

GetPlacement(DependencyObject)

Získá hodnotu Placement vlastnosti zadaného objektu.

GetPlacementRectangle(DependencyObject)

Získá hodnotu PlacementRectangle vlastnosti zadaného objektu.

GetPlacementTarget(DependencyObject)

Získá hodnotu PlacementTarget vlastnosti zadaného objektu.

GetShowOnDisabled(DependencyObject)

Získá hodnotu ShowOnDisabled vlastnosti zadaného objektu.

GetVerticalOffset(DependencyObject)

Získá hodnotu VerticalOffset vlastnosti zadaného objektu.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Odebere obslužnou rutinu pro připojenou ContextMenuClosing událost.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Odebere obslužnou rutinu pro připojenou ContextMenuOpening událost.

SetContextMenu(DependencyObject, ContextMenu)

Nastaví hodnotu ContextMenu vlastnosti zadaného objektu.

SetHasDropShadow(DependencyObject, Boolean)

Nastaví hodnotu, která označuje, jestli ContextMenu má stín.

SetHorizontalOffset(DependencyObject, Double)

Nastaví hodnotu HorizontalOffset vlastnosti zadaného objektu.

SetIsEnabled(DependencyObject, Boolean)

Nastaví hodnotu IsEnabled vlastnosti zadaného objektu.

SetPlacement(DependencyObject, PlacementMode)

Nastaví hodnotu Placement vlastnosti zadaného objektu.

SetPlacementRectangle(DependencyObject, Rect)

Nastaví hodnotu PlacementRectangle vlastnosti zadaného objektu.

SetPlacementTarget(DependencyObject, UIElement)

Nastaví hodnotu PlacementTarget vlastnosti zadaného objektu.

SetShowOnDisabled(DependencyObject, Boolean)

Nastaví hodnotu ShowOnDisabled vlastnosti zadaného objektu.

SetVerticalOffset(DependencyObject, Double)

Nastaví hodnotu VerticalOffset vlastnosti zadaného objektu.

Přidružené události

ContextMenuClosing

Vyvolá se při ContextMenu zavření.

ContextMenuOpening

Vyvolá se při ContextMenu otevření.

Platí pro

Viz také