FrameworkContentElement.ContextMenuOpening Событие

Определение

Происходит при открытии какого-либо контекстного меню в элементе.

public:
 event System::Windows::Controls::ContextMenuEventHandler ^ ContextMenuOpening;
public event System.Windows.Controls.ContextMenuEventHandler ContextMenuOpening;
member this.ContextMenuOpening : System.Windows.Controls.ContextMenuEventHandler 
Public Custom Event ContextMenuOpening As ContextMenuEventHandler 

Тип события

Комментарии

Чтобы вручную открыть контекстные меню, обработчики событий должны пометить соответствующее событие как обработанное. В противном случае существующее ContextMenu значение свойства будет использоваться для автоматического открытия контекстного меню. Пометка обработанного события фактически отменит действие по умолчанию и может привести к сбросу ContextMenu значения свойства, а затем открыть новый ContextMenu. Тем не менее, существует проблема времени, о чем вы должны знать. Чтобы полностью заменить контекстное меню с помощью обработчика ContextMenuOpening , начальное контекстное меню не должно быть пустым или пустым. Кроме того, может потребоваться обработать событие, а затем вручную открыть новое контекстное меню. Дополнительные сведения см. в разделе Практическое руководство. Обработка события ContextMenuOpening.

Чтобы использовать это событие в стиле EventTrigger , необходимо указать базовый идентификатор события службы:

<EventTrigger RoutedEvent="ContextMenuService.ContextMenuOpening">
  <!-- storyboard here ... -->
</EventTrigger>

(Такое использование является обязательным, так как реализация FrameworkContentElement события в , которая предоставляет базовое событие службы, неправильно сопоставляет ContextMenuOpening идентификатор для использования в триггерах.

Сведения о маршрутизируемом событии

Поле идентификатора ContextMenuOpeningEvent
Стратегия маршрутизации Восходящей
Делегат ContextMenuEventHandler

Применяется к

См. также раздел