FrameworkContentElement.ContextMenuOpening Zdarzenie

Definicja

Występuje po otwarciu dowolnego menu kontekstowego elementu.Occurs when any context menu on the element is opened.

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 

Uwagi

Aby ręcznie otworzyć menu kontekstowe, programy obsługi zdarzeń powinny oznaczyć odpowiednie zdarzenie jako obsłużone.To manually open context menus, handlers of the events should mark the relevant event as handled. W przeciwnym razie istniejąca wartość właściwości ContextMenu zostanie użyta do automatycznego otwarcia menu kontekstowego.Otherwise, the existing value of the ContextMenu property will be used to automatically open a context menu. Oznaczenie obsłużonego zdarzenia będzie efektywnie anulować akcję domyślną i może być możliwością zresetowania wartości właściwości ContextMenu a następnie otworzenia nowej ContextMenu.Marking the event handled will effectively cancel the default action, and could be an opportunity to reset the value of the ContextMenu property and then open the new ContextMenu. Istnieje jednak problem z chronometrażem, którego należy wiedzieć.However, there is a timing issue you should be aware of. W celu całkowitego zastąpienia menu kontekstowego za pomocą procedury obsługi ContextMenuOpening, początkowe menu kontekstowe nie może mieć wartości null ani być puste.In order to completely replace the context menu through a ContextMenuOpening handler, the initial context menu must not be null / empty. Alternatywnie może być konieczne obsłużenie zdarzenia, a następnie ręczne otwarcie nowego menu kontekstowego.Alternatively, you might need to handle the event and then manually open a new context menu. Aby uzyskać szczegółowe informacje, zobacz jak: obsłużyć zdarzenie ContextMenuOpening.For details, see How to: Handle the ContextMenuOpening Event.

Aby użyć tego zdarzenia jako EventTrigger w stylu, należy odwołać się do podstawowego identyfikatora zdarzenia usługi:To use this event as an EventTrigger in a style, you must reference the underlying service event identifier:

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

(To użycie jest wymagane, ponieważ implementacja zdarzeń na FrameworkContentElement, która ujawnia podstawowe zdarzenie usługi, nie mapuje prawidłowo identyfikatora ContextMenuOpening do użycia w wyzwalaczach).(This usage is required because the event implementation on FrameworkContentElement that exposes the underlying service event does not correctly map the ContextMenuOpening identifier for use in triggers).

Informacje dotyczące kierowanego zdarzeniaRouted Event Information

Pole identyfikatoraIdentifier field ContextMenuOpeningEvent
Strategia routinguRouting strategy PropagacjaBubbling
DelegateDelegate ContextMenuEventHandler

Dotyczy

Zobacz też