UIElement3D.OnPreviewMouseUp(MouseButtonEventArgs) Methode

Definition

Wird aufgerufen, wenn ein nicht behandeltes, angefügtes PreviewMouseUp-Ereignis beim Durchlauf ein von dieser Klasse abgeleitetes Element erreicht. Implementieren Sie diese Methode, um eine Klassenbehandlung für dieses Ereignis hinzuzufügen.

protected public:
 virtual void OnPreviewMouseUp(System::Windows::Input::MouseButtonEventArgs ^ e);
protected internal virtual void OnPreviewMouseUp (System.Windows.Input.MouseButtonEventArgs e);
abstract member OnPreviewMouseUp : System.Windows.Input.MouseButtonEventArgs -> unit
override this.OnPreviewMouseUp : System.Windows.Input.MouseButtonEventArgs -> unit
Protected Friend Overridable Sub OnPreviewMouseUp (e As MouseButtonEventArgs)

Parameter

e
MouseButtonEventArgs

Das MouseButtonEventArgs, das die Ereignisdaten enthält. Die Ereignisdaten melden, dass eine oder mehrere Maustasten losgelassen wurden.

Hinweise

Maustastenaktionen werden auch von einem dedizierten Eingabe-Manager verarbeitet. Andere Programmierfeatures, die auf Maustastenaktionen basieren, z. B. Eingabe- und Befehlsbindungen, können Handler für die Aktion aufrufen, bevor sie als allgemeine Maustastenaktion verfügbar gemacht wird. Wenn diese Eingabesystemfeatures das Mouse.PreviewMouseUp Ereignis als behandelt markieren, OnPreviewMouseUp wird nicht aufgerufen.

Wenn Sie diesen Klassenhandler verwenden, um das Ereignis als behandelt zu markieren, wirken Sie sich möglicherweise auf die folgenden Ereignisse aus: PreviewMouseLeftButtonUp und PreviewMouseRightButtonUp. Eines dieser Ereignisse kann beim Empfang für das empfangende Element Mouse.PreviewMouseUp ausgelöst werden.

Wenn Sie dieses Ereignis als in der Klassenbehandlung behandelt markieren, werden weiterhin Unterereignisse ausgelöst. sie übergeben jedoch den behandelten Zustand in den Ereignisdaten. Wenn das Ereignis in der Klassenbehandlung behandelt wird, werden instance Handler für die Unterereignisse nicht aufgerufen, es sei denn, Sie verwenden AddHandler(RoutedEvent, Delegate, Boolean) explizit mithandledEventsTootrue, um Handler anzufügen. Klassenhandler werden auch nicht aufgerufen, es sei denn, diese Klassenhandler wurden mit der RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) Signatur mit handledEventsTootrueregistriert. Durch die Behandlung OnPreviewMouseUpvon wird impliziert, dass ihre Klassenbehandlung alle möglichen Aktionen für die Maustaste nach oben berücksichtigt. Dieses Verhalten kann unerwünscht sein. Achten Sie daher darauf, wenn Sie diese virtuelle Methode verwenden, um Ereignisse als behandelt zu markieren.

Jedes der schaltflächenspezifischen direkten Ereignisse verfügt außerdem über eine virtuelle On*-Methode. Überlegen Sie, ob das Überschreiben dieser schaltflächenspezifischen Klassenhandler besser geeignet ist.

Diese Methode verfügt über keine Standardimplementierung. Da eine Zwischenklasse in der Vererbung diese Methode implementieren kann, wird empfohlen, die Basisimplementierung in Ihrer Implementierung aufzurufen.

Der Zweck dieser Methode ähnelt dem Common Language Runtime (CLR)-Ereignismuster On*-Methoden: Diese Methode bietet die Möglichkeit, das übereinstimmende Ereignis von abgeleiteten Klassen zu verarbeiten, indem anstelle eines instance-Handlers ein Klassenhandler erstellt wird. In diesem Fall ist das übereinstimmende Ereignis ein Routingereignis. Das Implementierungsmuster der On*-Methoden unterscheidet sich für Routingereignisse, da ein Routingereignis von einem untergeordneten Element ausgelöst werden kann, das nicht unbedingt das Element ist, das Handler aufruft. Daher muss Ihre Implementierung die Quelleigenschaften der Ereignisdaten untersuchen. In den meisten Fällen sollte nicht versucht werden, das Ereignis erneut zu reraktivieren.

Entweder durch Überschreiben dieser Methode oder durch Registrieren von Klassenhandlern bei RegisterClassHandlerkönnen abgeleitete Klassen von UIElement3D private Klassenhandlermethoden aufrufen, wenn das Ereignis entlang der Ereignisroute empfangen wird. Ein Szenario, in dem die Klassenbehandlung geeignet ist, besteht darin, die Ereignisdaten zu bearbeiten und das weitergeleitete Ereignis als behandelt zu markieren.

OnPreviewMouseUpwird in der .NET Framework Version 3.5 eingeführt. Weitere Informationen finden Sie unter Versionen und Abhängigkeiten.

Gilt für:

Weitere Informationen