ContextMenuService Classe

Définition

Fournit l'implémentation du système pour afficher un ContextMenu.Provides the system implementation for displaying a ContextMenu.

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

Exemples

L’exemple suivant assigne le même ContextMenu ensemble à deux boutons et définit HasDropShadow les Placement Propriétés,,, PlacementRectangle HorizontalOffset et VerticalOffset pour définir les ContextMenu différentes positions pour chaque bouton.The following example assigns the same ContextMenu to two buttons and sets the HasDropShadow, Placement, PlacementRectangle, HorizontalOffset, and VerticalOffset properties to set the ContextMenu to different positions for each button.

<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 sur un bouton désactivé.The following example shows how to use the service to display a ContextMenu on a disabled button. Notez que vous définissez la ShowOnDisabled propriété sur le bouton qui est le parent du menu contextuel.Notice that you set the ShowOnDisabled property on the button that is the parent of the context menu.

<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.The ContextMenuService class provides attached properties that can be used to specify the appearance and position of a context menu. La plupart des propriétés de la ContextMenuService classe sont également définies par le ContextMenu .Many of the properties in the ContextMenuService class are also defined by the 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 .Sometimes it is more convenient to set the properties by using the ContextMenuService class than by setting the properties on a ContextMenu. Par exemple, vous pouvez créer un ContextMenu qui doit être partagé par plusieurs éléments, mais utilisez la ContextMenuService classe pour spécifier une position différente du ContextMenu pour chaque élément.For example, you can create a ContextMenu to be shared by multiple elements, but use the ContextMenuService class to specify a different position of the ContextMenu for each element. Les propriétés suivantes sont définies par les ContextMenu ContextMenuService classes et.The following properties are defined by the ContextMenu and ContextMenuService classes. Si l’une de ces propriétés est définie à la fois sur ContextMenu et sur ContextMenuService , la valeur de la propriété de ContextMenuService est utilisée.If any of these properties are set on both ContextMenu and the ContextMenuService, the property value from the ContextMenuService is used.

Vous pouvez également utiliser le ContextMenuService pour afficher les menus sur les éléments désactivés.You can also use the ContextMenuService to display menus on disabled items.

Champs

ContextMenuClosingEvent

Identifie l'événement acheminé ContextMenuClosing.Identifies the ContextMenuClosing routed event.

ContextMenuOpeningEvent

Identifie l’événement attaché ContextMenuOpening.Identifies the ContextMenuOpening attached event.

ContextMenuProperty

Identifie la propriété jointe ContextMenu.Identifies the ContextMenu attached property.

HasDropShadowProperty

Identifie la propriété jointe HasDropShadow.Identifies the HasDropShadow attached property.

HorizontalOffsetProperty

Identifie la propriété jointe HorizontalOffset.Identifies the HorizontalOffset attached property.

IsEnabledProperty

Identifie la propriété jointe IsEnabled.Identifies the IsEnabled attached property.

PlacementProperty

Identifie la propriété jointe Placement.Identifies the Placement attached property.

PlacementRectangleProperty

Identifie la propriété jointe PlacementRectangle.Identifies the PlacementRectangle attached property.

PlacementTargetProperty

Identifie la propriété jointe PlacementTarget.Identifies the PlacementTarget attached property.

ShowOnDisabledProperty

Identifie la propriété jointe ShowOnDisabled.Identifies the ShowOnDisabled attached property.

VerticalOffsetProperty

Identifie la propriété jointe VerticalOffset.Identifies the VerticalOffset attached property.

Propriétés attachées

ContextMenu

Obtient ou définit le contenu d'un ContextMenu.Gets or sets the content of a ContextMenu.

HasDropShadow

Obtient ou définit une valeur qui indique si l'effet d'ombre portée est activé pour le ContextMenu.Gets or sets a value that indicates whether the ContextMenu has the drop shadow effect enabled.

HorizontalOffset

Obtient ou définit une valeur qui indique le positionnement, sur l'axe x, du ContextMenu, en tenant compte du contrôle parent.Gets or sets a value that indicates where along the x-direction to place the ContextMenu with respect to the parent control.

IsEnabled

Obtient ou définit une valeur qui indique si le ContextMenu peut s'afficher.Gets or sets a value that indicates whether the ContextMenu can be shown.

Placement

Obtient ou définit une valeur qui spécifie le positionnement du ContextMenu en fonction de la PlacementTarget ou du PlacementRectangle.Gets or sets a value that specifies the placement of the ContextMenu relative to the PlacementTarget or PlacementRectangle.

PlacementRectangle

Obtient ou définit la zone par rapport à laquelle le menu contextuel est positionné à son ouverture.Gets or sets the area relative to which the context menu is positioned when it opens.

PlacementTarget

Obtient ou définit le contrôle parent du menu contextuel ContextMenu.Gets or sets the parent control of the ContextMenu.

ShowOnDisabled

Obtient ou définit une valeur qui indique si le ContextMenu doit s'afficher lorsque son parent est grisé.Gets or sets a value that indicates whether the ContextMenu should be shown when its parent is grayed out.

VerticalOffset

Obtient ou définit une valeur qui indique le positionnement, sur l'axe y, du ContextMenu, par rapport au contrôle parent.Gets or sets a value that indicates where along the y-direction to place the ContextMenu with respect to the parent control.

Méthodes

AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Ajoute un gestionnaire pour l'événement attaché ContextMenuClosing.Adds a handler for the ContextMenuClosing attached event.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Ajoute un gestionnaire pour l'événement attaché ContextMenuOpening.Adds a handler for the ContextMenuOpening attached event.

GetContextMenu(DependencyObject)

Obtient la valeur de la propriété ContextMenu de l'objet spécifié.Gets the value of the ContextMenu property of the specified object.

GetHasDropShadow(DependencyObject)

Obtient une valeur qui indique si le ContextMenu présente une ombre portée.Gets a value that indicates whether the ContextMenu has a drop shadow.

GetHorizontalOffset(DependencyObject)

Obtient la valeur de la propriété HorizontalOffset de l'objet spécifié.Gets the value of the HorizontalOffset property of the specified object.

GetIsEnabled(DependencyObject)

Obtient la valeur de la propriété IsEnabled de l'objet spécifié.Gets the value of the IsEnabled property of the specified object.

GetPlacement(DependencyObject)

Obtient la valeur de la propriété Placement de l'objet spécifié.Gets the value of the Placement property of the specified object.

GetPlacementRectangle(DependencyObject)

Obtient la valeur de la propriété PlacementRectangle de l'objet spécifié.Gets the value of the PlacementRectangle property of the specified object.

GetPlacementTarget(DependencyObject)

Obtient la valeur de la propriété PlacementTarget de l'objet spécifié.Gets the value of the PlacementTarget property of the specified object.

GetShowOnDisabled(DependencyObject)

Obtient la valeur de la propriété ShowOnDisabled de l'objet spécifié.Gets the value of the ShowOnDisabled property of the specified object.

GetVerticalOffset(DependencyObject)

Obtient la valeur de la propriété VerticalOffset de l'objet spécifié.Gets the value of the VerticalOffset property of the specified object.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Supprime un gestionnaire pour l'événement attaché ContextMenuClosing.Removes a handler for the ContextMenuClosing attached event.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Supprime un gestionnaire pour l'événement attaché ContextMenuOpening.Removes a handler for the ContextMenuOpening attached event.

SetContextMenu(DependencyObject, ContextMenu)

Définit la valeur de la propriété ContextMenu de l'objet spécifié.Sets the value of the ContextMenu property of the specified object.

SetHasDropShadow(DependencyObject, Boolean)

Définit une valeur qui indique si le ContextMenu présente une ombre portée.Sets a value that indicates whether the ContextMenu has a drop shadow.

SetHorizontalOffset(DependencyObject, Double)

Définit la valeur de la propriété HorizontalOffset de l'objet spécifié.Sets the value of the HorizontalOffset property of the specified object.

SetIsEnabled(DependencyObject, Boolean)

Définit la valeur de la propriété IsEnabled de l'objet spécifié.Sets the value of the IsEnabled property of the specified object.

SetPlacement(DependencyObject, PlacementMode)

Définit la valeur de la propriété Placement de l'objet spécifié.Sets the value of the Placement property of the specified object.

SetPlacementRectangle(DependencyObject, Rect)

Définit la valeur de la propriété PlacementRectangle de l'objet spécifié.Sets the value of the PlacementRectangle property of the specified object.

SetPlacementTarget(DependencyObject, UIElement)

Définit la valeur de la propriété PlacementTarget de l'objet spécifié.Sets the value of the PlacementTarget property of the specified object.

SetShowOnDisabled(DependencyObject, Boolean)

Définit la valeur de la propriété ShowOnDisabled de l'objet spécifié.Sets the value of the ShowOnDisabled property of the specified object.

SetVerticalOffset(DependencyObject, Double)

Définit la valeur de la propriété VerticalOffset de l'objet spécifié.Sets the value of the VerticalOffset property of the specified object.

Événements attachés

ContextMenuClosing

Se produit lorsque ContextMenu se ferme.Occurs when the ContextMenu closes.

ContextMenuOpening

Se produit lors de l'ouverture de ContextMenu.Occurs when the ContextMenu opens.

S’applique à

Voir aussi