FrameworkElement.ContextMenuClosing FrameworkElement.ContextMenuClosing FrameworkElement.ContextMenuClosing FrameworkElement.ContextMenuClosing Event

Определение

Происходит непосредственно перед закрытием какого-либо контекстного меню в элементе.Occurs just before any context menu on the element is closed.

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

Комментарии

Чтобы подавить закрытие контекстных меню, обработчики события должны пометить его как обработанное.To suppress closing context menus, handlers of the event should mark it as handled.

Чтобы использовать это событие EventTrigger в стиле, необходимо ссылаться на определение события базовой службы:To use this event as an EventTrigger in a style, you must reference the underlying service's definition of the event:

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

(Это необходимо, поскольку реализация FrameworkElement события, предоставляющего базовое событие службы, не ContextMenuClosing сопоставляет идентификатор таким образом, что его можно использовать в качестве триггера).(This usage is required because the event implementation on FrameworkElement that exposes the underlying service event does not map the ContextMenuClosing identifier such that you can use it as a trigger).

ContextMenuсам по себе FrameworkElement является производным классом ContextMenuClosing , но событие не будет вызываться непосредственно контекстным меню.ContextMenu itself is a FrameworkElement derived class, but the ContextMenuClosing event will not be raised by a context menu directly. Вместо этого событие вызывается из элемента, который "владеет" контекстным меню в качестве свойства и вызывается только тогда, когда пользователь пытается закрыть контекстное меню в пользовательском интерфейсе.Instead, the event is raised from the element that "owns" the context menu as a property and is only raised when a user attempts to close a context menu in the UI. Однако у себя может быть свойство (вложенное контекстное меню). ContextMenu ContextMenuHowever it is possible for ContextMenu itself to have a ContextMenu property (a nested context menu). В этом случае, ContextMenu в действительности владеет вложенным ContextMenu и может вызвать событие, источником события является вложенное контекстное меню.In this case the ContextMenu really does own the nested ContextMenu and might raise the event, with the source of the event being the nested context menu.

Сам класс также имеет аналогичное событие (Closed), но Closed событие не предоставляет возможности отменить действие пользователя. ContextMenuThe ContextMenu class itself also has a similar event (Closed) but the Closed event does not provide you the opportunity to cancel the user action.

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

Поле идентификатораIdentifier field ContextMenuClosingEvent
Стратегия маршрутизацииRouting strategy Восходящей маршрутизацииBubbling
делегатDelegate ContextMenuEventHandler
  • Переопределение OnContextMenuClosing для реализации обработки класса для этого события в производных классах.Override OnContextMenuClosing to implement class handling for this event in derived classes.

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

Дополнительно