ContextMenuService Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет системную реализацию для отображения ContextMenu.
public ref class ContextMenuService abstract sealed
public static class ContextMenuService
type ContextMenuService = class
Public Class ContextMenuService
- Наследование
-
ContextMenuService
Примеры
Следующий пример назначает одинаковые ContextMenu две кнопки и задает HasDropShadowсвойства , PlacementHorizontalOffsetPlacementRectangleи VerticalOffset свойства, чтобы задать ContextMenu для каждой кнопки разные позиции.
<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>
В следующем примере показано, как использовать службу для отображения ContextMenu на отключенной кнопке. Обратите внимание, что вы задаете ShowOnDisabled свойство на кнопке, которая является родительским элементом контекстного меню.
<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>
Комментарии
Класс ContextMenuService предоставляет присоединенные свойства, которые можно использовать для указания внешнего вида и положения контекстного меню. Многие свойства в ContextMenuService классе также определяются ContextMenu. Иногда бывает удобнее задать свойства с помощью ContextMenuService класса, чем путем задания свойств в объекте ContextMenu. Например, можно создать общий ContextMenu доступ к нескольким элементам, но использовать ContextMenuService класс для указания разной позиции ContextMenu каждого элемента. Следующие свойства определяются классами и ContextMenuService классамиContextMenu. Если для обоих свойств задано ContextMenuContextMenuServiceлюбое из этих свойств, то используется значение свойства.ContextMenuService
Вы также можете использовать ContextMenuService меню для отображения в отключенных элементах.
Поля
| Имя | Описание |
|---|---|
| ContextMenuClosingEvent |
Определяет ContextMenuClosing перенаправленное событие. |
| ContextMenuOpeningEvent |
Определяет присоединенное ContextMenuOpening событие. |
| ContextMenuProperty |
Определяет присоединенное ContextMenu свойство. |
| HasDropShadowProperty |
Определяет присоединенное HasDropShadow свойство. |
| HorizontalOffsetProperty |
Определяет присоединенное HorizontalOffset свойство. |
| IsEnabledProperty |
Определяет присоединенное IsEnabled свойство. |
| PlacementProperty |
Определяет присоединенное Placement свойство. |
| PlacementRectangleProperty |
Определяет присоединенное PlacementRectangle свойство. |
| PlacementTargetProperty |
Определяет присоединенное PlacementTarget свойство. |
| ShowOnDisabledProperty |
Определяет присоединенное ShowOnDisabled свойство. |
| VerticalOffsetProperty |
Определяет присоединенное VerticalOffset свойство. |
Присоединенные свойства
| Имя | Описание |
|---|---|
| ContextMenu |
Возвращает или задает содержимое объекта ContextMenu. |
| HasDropShadow |
Возвращает или задает значение, указывающее, включен ли ContextMenu эффект тени падения. |
| HorizontalOffset |
Возвращает или задает значение, указывающее, где вдоль x-направления помещается ContextMenu родительский элемент управления. |
| IsEnabled |
Возвращает или задает значение, указывающее, можно ли отображать его ContextMenu . |
| Placement |
Возвращает или задает значение, указывающее размещение ContextMenu относительно PlacementTarget или PlacementRectangle. |
| PlacementRectangle |
Возвращает или задает область, относительно которой контекстное меню расположено при открытии. |
| PlacementTarget |
Возвращает или задает родительский элемент управления ContextMenu. |
| ShowOnDisabled |
Возвращает или задает значение, указывающее, должен ли отображаться объект ContextMenu , когда его родительский элемент неактивен. |
| VerticalOffset |
Возвращает или задает значение, указывающее, где по направлению y поместите ContextMenu родительский элемент управления. |
Методы
Присоединенные события
| Имя | Описание |
|---|---|
| ContextMenuClosing |
Происходит при закрытии ContextMenu . |
| ContextMenuOpening |
Происходит при открытии ContextMenu . |