FrameworkElement.ContextMenuOpening Händelse
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Inträffar när en snabbmeny på elementet öppnas.
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
Händelsetyp
Kommentarer
Om du vill öppna snabbmenyer manuellt bör hanterare av händelserna markera den relevanta händelsen som hanterad. Annars används det befintliga värdet för ContextMenu egenskapen för att automatiskt öppna en snabbmeny. Om du markerar den hanterade händelsen avbryts standardåtgärden effektivt och kan vara en möjlighet att återställa värdet för ContextMenu egenskapen och sedan öppna den nya ContextMenu. Det finns dock ett tidsfel som du bör känna till. För att helt ersätta snabbmenyn via en ContextMenuOpening hanterare får den inledande snabbmenyn inte vara null/tom. Du kan också behöva hantera händelsen och sedan öppna en ny snabbmeny manuellt. Mer information finns i Så här hanterar du händelsen ContextMenuOpening.
Om du vill använda den här händelsen som en EventTrigger i ett format måste du referera till den underliggande kopplade händelsen:
<EventTrigger RoutedEvent="ContextMenuService.ContextMenuOpening">
<!-- storyboard here ... -->
</EventTrigger>
(Den här användningen krävs eftersom händelseimplementeringen som FrameworkElement exponerar den underliggande tjänsthändelsen inte mappar identifieraren ContextMenuOpening så att du kan använda den i utlösare).
ContextMenu i sig är en FrameworkElement härledd klass, men den här händelsen genereras inte från snabbmenyn som öppnas som källa. Händelsen genereras från elementet som "äger" snabbmenyn som en egenskap och aktiveras endast när en användare försöker öppna en snabbmeny i användargränssnittet. Det är möjligt för ContextMenu sig själv att ha en ContextMenu egenskap, men du bör undvika det här scenariot (mer information finns i FrameworkElement.ContextMenu).
Själva ContextMenu klassen har också en liknande händelse (Opened) men Opened ger dig inte möjlighet att avbryta användaråtgärden.
Information om dirigerad händelse
| Objekt | Value |
|---|---|
| Identifierarfält | ContextMenuOpeningEvent |
| Routningsstrategi | Bubblande |
| Delegera | ContextMenuEventHandler |
- Åsidosätt OnContextMenuOpening för att implementera klasshantering för den här händelsen i härledda klasser.