UIElement.OnPreviewMouseLeftButtonDown(MouseButtonEventArgs) Metoda

Definicja

Wywoływane, gdy nieobsłużone PreviewMouseLeftButtonDown zdarzenie osiągnie element w swojej trasie, który jest pochodną tej klasy.Invoked when an unhandled PreviewMouseLeftButtonDown routed event reaches an element in its route that is derived from this class. Zaimplementuj tę metodę, aby dodać obsługę klasy dla tego zdarzenia.Implement this method to add class handling for this event.

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

Parametry

e
MouseButtonEventArgs

MouseButtonEventArgsZawierający dane zdarzenia.The MouseButtonEventArgs that contains the event data. Dane zdarzenia zgłaszają naciśnięcie lewego przycisku myszy.The event data reports that the left mouse button was pressed.

Uwagi

PreviewMouseLeftButtonDownZdarzenie wydaje się kierować trasą tunelowania, ale rzeczywiście podróżuje w sposób pośredni.The PreviewMouseLeftButtonDown event appears to travel a tunneling route but actually travels in an indirect way. Mouse.PreviewMouseDown to zdarzenie bazowe, które jest trasowane przez tunel, a każdy z nich jest UIElement używany do wywołania bezpośredniego kierowanego zdarzenia do trasy zdarzeń PreviewMouseLeftButtonDown .Mouse.PreviewMouseDown is the underlying event that is tunnel routed, and each UIElement along the event route uses identical handling to raise the direct routed event PreviewMouseLeftButtonDown. Mimo że można oznaczyć PreviewMouseLeftButtonDown zdarzenie jako obsługiwane dla celów tego elementu, przewidziany stan nie perpetuate się do innych elementów wzdłuż trasy zdarzenia.Although you can mark the PreviewMouseLeftButtonDown event as handled for purposes of this element, the handled state does not perpetuate to other elements along the event route. Można jednak oznaczyć zdarzenie jako obsłużone w celu uniemożliwienia wywoływania ogólnych programów obsługi wystąpień (tych, które nie zostały określone handledEventsToo ).However, you might want to mark the event as handled in order to prevent general instance handlers (those that did not specify handledEventsToo) from being invoked.

Domyślna implementacja ogólnej obsługi zdarzeń myszy w programie UIElement nasłuchuje Mouse.PreviewMouseDown i konwertuje ją na odpowiednie zdarzenie lokalne.The default implementation for general mouse event handling in UIElement listens for Mouse.PreviewMouseDown and converts it to an appropriate local event. Jeśli chcesz przesłonić tę logikę, należy utworzyć klasę pochodną.If you want to override this logic, you must create a derived class. W konstruktorze statycznym klasy pochodnej Zarejestruj procedurę obsługi klasy alternatywnej dla Mouse.PreviewMouseDown .In the static constructor of your derived class, register an alternative class handler for Mouse.PreviewMouseDown. Nie można zmienić zachowania obsługi myszy UIElement przez zastąpienie OnPreviewMouseLeftButtonDown .You cannot change the mouse handling behavior of UIElement by overriding OnPreviewMouseLeftButtonDown.

Alternatywnie można zastąpić tę metodę, aby zmienić obsługę zdarzeń dla określonego stanu myszy.Alternatively, you can override this method in order to change event handling for a specific mouse state. Niezależnie od tego, czy chcesz wywołać implementację podstawową, zależy od danego scenariusza.Whether you choose to call the base implementation depends on your scenario. Niepowodzenie wywołania elementu Base powoduje wyłączenie domyślnej obsługi danych wejściowych dla tego zdarzenia myszy w klasach nadrzędnych, które również powinny być wywoływane OnPreviewMouseLeftButtonDown .Failing to call base disables default input handling for that mouse event on ancestor classes that also expect to invoke OnPreviewMouseLeftButtonDown. Na przykład można dziedziczyć z Button klasy pochodnej i zastąpić ją OnPreviewMouseLeftButtonDown bez wywoływania podstawowej implementacji, jednak to zastąpienie spowoduje wyłączenie Click zdarzenia.For example, you can derive from Button and override OnPreviewMouseLeftButtonDown in your derived class without calling the base implementation; however, this override disables the Click event.

Dotyczy