FrameworkElement.ContextMenuOpening Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastane, když je otevřena jakákoli místní nabídka prvku.
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
Event Type
Poznámky
Pokud chcete ručně otevřít místní nabídky, obslužné rutiny událostí by měly označit příslušnou událost jako zpracovanou. V opačném případě se stávající hodnota ContextMenu vlastnosti použije k automatickému otevření místní nabídky. Označení události zpracovávané v podstatě zruší výchozí akci a může být příležitostí obnovit hodnotu ContextMenu vlastnosti a pak otevřít novou ContextMenu. Měli byste si však uvědomit, že došlo k problému s načasováním. Aby bylo možné místní nabídku zcela nahradit obslužnou rutinou ContextMenuOpening , nesmí být počáteční místní nabídka null / prázdná. Případně můžete potřebovat zpracovat událost a pak ručně otevřít novou místní nabídku. Podrobnosti najdete v tématu Postupy: Zpracování události ContextMenuOpening.
Pokud chcete tuto událost použít jako EventTrigger styl, musíte odkazovat na podkladovou připojenou událost:
<EventTrigger RoutedEvent="ContextMenuService.ContextMenuOpening">
<!-- storyboard here ... -->
</EventTrigger>
(Toto použití se vyžaduje, protože implementace FrameworkElement události, která zveřejňuje podkladovou událost služby, nemapuje ContextMenuOpening identifikátor tak, aby ho bylo možné použít v triggerech).
ContextMenu samotná je odvozená FrameworkElement třída, ale tato událost nebude vyvolána z místní nabídky, která je otevřena jako zdroj. Událost je vyvolána z elementu, který "vlastní" místní nabídku jako vlastnost a je vyvolána pouze v případě, že se uživatel pokusí otevřít místní nabídku v uživatelském rozhraní. Je možné ContextMenu , že sám o sobě má ContextMenu vlastnost, ale měli byste se vyhnout tomuto scénáři (podrobnosti viz FrameworkElement.ContextMenu).
Samotná ContextMenu třída má také podobnou událost (Opened), ale Opened neposkytuje příležitost zrušit akci uživatele.
Informace o směrované události
| Položka | Hodnota |
|---|---|
| Pole Identifikátor | ContextMenuOpeningEvent |
| Strategie směrování | Bublající |
| Delegát | ContextMenuEventHandler |
- Přepsání OnContextMenuOpening pro implementaci zpracování tříd pro tuto událost v odvozených třídách.