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


要素のコンテキスト メニューが閉じる直前に発生します。Occurs just before any context menu on the element is closed.

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

(この使用法が必要なのでイベントの実装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. 代わりに、プロパティとして、コンテキスト メニューを"所有"して、ユーザーが UI にコンテキスト メニューを閉じるしようとしたときにだけ発生する要素から、イベントが発生します。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自体が、ContextMenuプロパティ (入れ子になったコンテキスト メニュー)。However 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.

ContextMenuクラス自体にも同様のイベント (Closed) が、Closedイベントは、ユーザーの操作をキャンセルする機会が提供されません。The 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
DelegateDelegate ContextMenuEventHandler
  • オーバーライドOnContextMenuClosing派生クラスでは、このイベントに対するクラス処理を実装します。Override OnContextMenuClosing to implement class handling for this event in derived classes.