FrameworkElement.ContextMenuOpening Gebeurtenis
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Treedt op wanneer een contextmenu op het element wordt geopend.
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
Gebeurtenistype
Opmerkingen
Als u contextmenu's handmatig wilt openen, moeten handlers van de gebeurtenissen de relevante gebeurtenis markeren als verwerkt. Anders wordt de bestaande waarde van de ContextMenu eigenschap gebruikt om automatisch een contextmenu te openen. Als u de afgehandelde gebeurtenis markeert, wordt de standaardactie effectief geannuleerd en kan het een mogelijkheid zijn om de waarde van de ContextMenu eigenschap opnieuw in te stellen en vervolgens de nieuwe ContextMenute openen. Er is echter een timingprobleem waar u rekening mee moet houden. Als u het contextmenu volledig wilt vervangen door een ContextMenuOpening handler, mag het eerste contextmenu niet null/leeg zijn. U kunt ook de gebeurtenis afhandelen en vervolgens handmatig een nieuw contextmenu openen. Zie Procedure voor meer informatie: De gebeurtenis ContextMenuOpening afhandelen.
Als u deze gebeurtenis wilt gebruiken als een EventTrigger stijl, moet u verwijzen naar de onderliggende gekoppelde gebeurtenis:
<EventTrigger RoutedEvent="ContextMenuService.ContextMenuOpening">
<!-- storyboard here ... -->
</EventTrigger>
(Dit gebruik is vereist omdat de gebeurtenis-implementatie op FrameworkElement die de onderliggende service-gebeurtenis beschikbaar maakt, de ContextMenuOpening id niet toe wijst, zodat u deze in triggers kunt gebruiken).
ContextMenu zelf is een FrameworkElement afgeleide klasse, maar deze gebeurtenis wordt niet gegenereerd vanuit het contextmenu dat als bron wordt geopend. De gebeurtenis wordt gegenereerd vanuit het element dat eigenaar is van het contextmenu als eigenschap en wordt alleen gegenereerd wanneer een gebruiker probeert een contextmenu in de gebruikersinterface te openen. Het is mogelijk voor ContextMenu zichzelf om een ContextMenu eigenschap te hebben, maar u moet dit scenario vermijden (zie voor meer informatie FrameworkElement.ContextMenu).
De ContextMenu klasse zelf heeft ook een vergelijkbare gebeurtenis (Opened) maar Opened biedt u niet de mogelijkheid om de actie van de gebruiker te annuleren.
Gerouteerde gebeurtenisgegevens
| Item | Waarde |
|---|---|
| Id-veld | ContextMenuOpeningEvent |
| Routeringsstrategie | Borrelen |
| Gedelegeerde | ContextMenuEventHandler |
- Overschrijven OnContextMenuOpening voor het implementeren van klasseafhandeling voor deze gebeurtenis in afgeleide klassen.