UIElement3D.MouseLeftButtonDown Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt auf, wenn die linke Maustaste gedrückt wird, während sich der Mauszeiger über diesem Element befindet.
public:
virtual event System::Windows::Input::MouseButtonEventHandler ^ MouseLeftButtonDown;
public event System.Windows.Input.MouseButtonEventHandler MouseLeftButtonDown;
member this.MouseLeftButtonDown : System.Windows.Input.MouseButtonEventHandler
Public Custom Event MouseLeftButtonDown As MouseButtonEventHandler
Ereignistyp
Implementiert
Hinweise
Obwohl diese Übersicht über Routenereignisse einer sprudelnden Route durch eine Elementstruktur zu folgen scheint, handelt es sich tatsächlich um ein direktes Routingereignis, das entlang der Elementstruktur von jedem UIElement3Dausgelöst und neu festgelegt wird.
Dieses Ereignis ist eines von mehreren verwandten Ereignissen, die die Maustasten-Besonderheiten eines zugrunde liegenden Mouse.MouseDown Ereignisses melden, bei dem es sich um ein angefügtes Ereignis handelt, das von jedem Element entlang einer Ereignisroute verarbeitet wird.
Die Ereignisdaten dieses Ereignisses machen die Ereignisdaten des zugrunde liegenden Mouse.MouseDown Ereignisses verfügbar. Wenn dieses Ereignis entlang der Ereignisroute als behandelt markiert wird, werden die maustastenspezifischen Ereignisse weiterhin ausgelöst. Jedoch müssen Handler für die maustastenspezifischen Ereignisse hinzugefügt werden, indem explizit aufgerufen AddHandlerwird, mit der Option, Ereignisse zu behandeln, die bereits als behandelt gekennzeichnet sind, um Listener für das Ereignis zu sein. Wenn Sie behandelt markieren MouseLeftButtonDown , werden sie im Wesentlichen für alle weiteren Listener entlang der Route und für alle zugehörigen Ereignisse behandelt Mouse.MouseDown . Dies schließt möglicherweise vom Klassenhandler generierte Ereignisse ein, z. B MouseDoubleClick. .
Stellen Sie sich dieses Ereignis (und andere Mouse-Button-Ereignisse auf UIElement3D) konzeptionell als "Dienst" der Maus vor (mit der von der -Klasse bereitgestellten Mouse Dienstdefinition). Das Ereignis fügt den Komfort hinzu, dass die Maustastenzustände (links-rechts, nach unten) der ursprünglichen Mausereignisse in den Ereignisdaten nicht überprüft werden müssen. Für erweiterte Szenarien, z. B. die Überprüfung auf Zustände von nicht standardmäßigen Schaltflächen, müssen Sie möglicherweise die APIs für die -Klasse anstelle der MouseUIElement3Dfür verwenden.
Wichtig
Die Klassenbehandlung kennzeichnet häufig das zugrunde liegende Mouse Klassenereignis als behandelt. Sobald das Ereignis behandelt markiert wurde, werden andere instance Handler, die an dieses Element angefügt sind, normalerweise nicht ausgelöst. Alle anderen Klassen- oder instance-Handler, die an Elemente in der Sprudelrichtung zum Stamm in der UI-Struktur angefügt sind, werden ebenfalls normalerweise nicht ausgelöst.
Sie können das Problem beheben, das im vorherigen Wichtig beschrieben ist und weiterhin MouseLeftButtonDown Ereignisse für Ereignisse mit der linken Maustaste für eine abgeleitete Klasse mit Klassenbehandlung empfängt, indem Sie eine der folgenden Lösungen verwenden:
Fügen Sie Handler für das PreviewMouseDown Ereignis an, das nicht als von den Steuerelementen behandelt markiert wird. Beachten Sie, dass die Route, da es sich um ein Vorschauereignis handelt, am Stamm beginnt und zum Steuerelement tunnelt.
Registrieren Sie einen Handler für das Steuerelement prozedural, indem Sie die Signaturoption aufrufen AddHandler und auswählen, die es Handlern ermöglicht, auf Ereignisse zu lauschen, auch wenn sie bereits in den Routingereignisdaten als behandelt gekennzeichnet sind.
Informationen zum Routingereignis
Bezeichnerfeld | MouseLeftButtonDownEvent |
Routingstrategie | Direkt |
Delegat | MouseButtonEventHandler |
- Überschreiben Sie OnMouseLeftButtonDown , um die Klassenbehandlung für dieses Ereignis in abgeleiteten Klassen zu implementieren.