Partager via


ContextMenuService Classe

Définition

Fournit l’implémentation du système pour l’affichage d’un ContextMenu.

public ref class ContextMenuService abstract sealed
public static class ContextMenuService
type ContextMenuService = class
Public Class ContextMenuService
Héritage
ContextMenuService

Exemples

L’exemple suivant affecte le même ContextMenu à deux boutons et définit les HasDropShadowpropriétés , , PlacementRectanglePlacementHorizontalOffsetet VerticalOffset les propriétés pour définir les ContextMenu positions différentes pour chaque bouton.

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

L’exemple suivant montre comment utiliser le service pour afficher un ContextMenu bouton désactivé. Notez que vous définissez la ShowOnDisabled propriété sur le bouton qui est le parent du menu contextuel.

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

Remarques

La ContextMenuService classe fournit des propriétés jointes qui peuvent être utilisées pour spécifier l’apparence et la position d’un menu contextuel. La plupart des propriétés de la ContextMenuService classe sont également définies par le ContextMenu. Il est parfois plus pratique de définir les propriétés à l’aide de la ContextMenuService classe qu’en définissant les propriétés sur un ContextMenu. Par exemple, vous pouvez créer un ContextMenu à partager par plusieurs éléments, mais utilisez la ContextMenuService classe pour spécifier une position différente de l’élément ContextMenu . Les propriétés suivantes sont définies par les classes et ContextMenuService les ContextMenu classes. Si l’une de ces propriétés est définie sur les deux ContextMenu et la ContextMenuServicevaleur de la propriété à partir de celle-ci ContextMenuService est utilisée.

Vous pouvez également utiliser l’option ContextMenuService pour afficher les menus sur les éléments désactivés.

Champs

Nom Description
ContextMenuClosingEvent

Identifie l’événement ContextMenuClosing routé.

ContextMenuOpeningEvent

Identifie l’événement ContextMenuOpening attaché.

ContextMenuProperty

Identifie la ContextMenu propriété jointe.

HasDropShadowProperty

Identifie la HasDropShadow propriété jointe.

HorizontalOffsetProperty

Identifie la HorizontalOffset propriété jointe.

IsEnabledProperty

Identifie la IsEnabled propriété jointe.

PlacementProperty

Identifie la Placement propriété jointe.

PlacementRectangleProperty

Identifie la PlacementRectangle propriété jointe.

PlacementTargetProperty

Identifie la PlacementTarget propriété jointe.

ShowOnDisabledProperty

Identifie la ShowOnDisabled propriété jointe.

VerticalOffsetProperty

Identifie la VerticalOffset propriété jointe.

Propriétés attachées

Nom Description
ContextMenu

Obtient ou définit le contenu d’un ContextMenu.

HasDropShadow

Obtient ou définit une valeur qui indique si l’effet ContextMenu d’ombre déroulante est activé.

HorizontalOffset

Obtient ou définit une valeur qui indique où le long de la direction x pour placer le ContextMenu contrôle parent.

IsEnabled

Obtient ou définit une valeur qui indique si la ContextMenu valeur peut être affichée.

Placement

Obtient ou définit une valeur qui spécifie le placement du ContextMenu par rapport au PlacementTarget ou PlacementRectangle.

PlacementRectangle

Obtient ou définit la zone par rapport à laquelle le menu contextuel est positionné lorsqu’il s’ouvre.

PlacementTarget

Obtient ou définit le contrôle parent du ContextMenu.

ShowOnDisabled

Obtient ou définit une valeur qui indique si la ContextMenu valeur doit être affichée lorsque son parent est grisé.

VerticalOffset

Obtient ou définit une valeur qui indique où le long de la direction y pour placer le ContextMenu contrôle parent.

Méthodes

Nom Description
AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Ajoute un gestionnaire pour l’événement ContextMenuClosing attaché.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Ajoute un gestionnaire pour l’événement ContextMenuOpening attaché.

GetContextMenu(DependencyObject)

Obtient la valeur de la ContextMenu propriété de l’objet spécifié.

GetHasDropShadow(DependencyObject)

Obtient une valeur qui indique si l’objet ContextMenu a une ombre déroulante.

GetHorizontalOffset(DependencyObject)

Obtient la valeur de la HorizontalOffset propriété de l’objet spécifié.

GetIsEnabled(DependencyObject)

Obtient la valeur de la IsEnabled propriété de l’objet spécifié.

GetPlacement(DependencyObject)

Obtient la valeur de la Placement propriété de l’objet spécifié.

GetPlacementRectangle(DependencyObject)

Obtient la valeur de la PlacementRectangle propriété de l’objet spécifié.

GetPlacementTarget(DependencyObject)

Obtient la valeur de la PlacementTarget propriété de l’objet spécifié.

GetShowOnDisabled(DependencyObject)

Obtient la valeur de la ShowOnDisabled propriété de l’objet spécifié.

GetVerticalOffset(DependencyObject)

Obtient la valeur de la VerticalOffset propriété de l’objet spécifié.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Supprime un gestionnaire pour l’événement ContextMenuClosing attaché.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Supprime un gestionnaire pour l’événement ContextMenuOpening attaché.

SetContextMenu(DependencyObject, ContextMenu)

Définit la valeur de la ContextMenu propriété de l’objet spécifié.

SetHasDropShadow(DependencyObject, Boolean)

Définit une valeur qui indique si l’objet ContextMenu a une ombre déroulante.

SetHorizontalOffset(DependencyObject, Double)

Définit la valeur de la HorizontalOffset propriété de l’objet spécifié.

SetIsEnabled(DependencyObject, Boolean)

Définit la valeur de la IsEnabled propriété de l’objet spécifié.

SetPlacement(DependencyObject, PlacementMode)

Définit la valeur de la Placement propriété de l’objet spécifié.

SetPlacementRectangle(DependencyObject, Rect)

Définit la valeur de la PlacementRectangle propriété de l’objet spécifié.

SetPlacementTarget(DependencyObject, UIElement)

Définit la valeur de la PlacementTarget propriété de l’objet spécifié.

SetShowOnDisabled(DependencyObject, Boolean)

Définit la valeur de la ShowOnDisabled propriété de l’objet spécifié.

SetVerticalOffset(DependencyObject, Double)

Définit la valeur de la VerticalOffset propriété de l’objet spécifié.

Événements attachés

Nom Description
ContextMenuClosing

Se produit lorsque la ContextMenu fermeture est terminée.

ContextMenuOpening

Se produit lors de l’ouverture ContextMenu .

S’applique à

Voir aussi