ContentElement.OnPreviewMouseLeftButtonDown(MouseButtonEventArgs) Метод

Определение

Вызывается, когда необработанное перенаправленное событие PreviewMouseLeftButtonDown встречает на своем маршруте элемент, производный от этого класса.Invoked when an unhandled PreviewMouseLeftButtonDown routed event reaches an element in its route that is derived from this class. Реализуйте этот метод, чтобы добавить для класса обработчик данного события.Implement this method to add class handling for this event.

protected public:
 virtual void OnPreviewMouseLeftButtonDown(System::Windows::Input::MouseButtonEventArgs ^ e);
protected internal 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 Friend Overridable Sub OnPreviewMouseLeftButtonDown (e As MouseButtonEventArgs)

Параметры

e
MouseButtonEventArgs

Объект класса MouseButtonEventArgs, содержащий данные о событии.The MouseButtonEventArgs that contains the event data. В данных события сообщается о том, что была нажата левая кнопка мыши.The event data reports that the left mouse button was pressed.

Комментарии

Событие PreviewMouseLeftButtonDown перемещает маршрут туннелирования, но фактически переносится косвенным образом.The PreviewMouseLeftButtonDown event appears to travel a tunneling route but actually travels in an indirect way. Mouse.PreviewMouseDown является базовым событием, направляемым по туннелю, и каждая ContentElement в маршруте события использует идентичную обработку для вызова PreviewMouseLeftButtonDownпрямого перенаправления события.Mouse.PreviewMouseDown is the underlying event that is tunnel routed, and each ContentElement along the event route uses identical handling to raise the direct routed event PreviewMouseLeftButtonDown. Хотя можно пометить событие PreviewMouseLeftButtonDown как обработанное для целей этого элемента, состояние обработки не является постоянным для других элементов в маршруте события.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. Однако может потребоваться пометить событие как обработанное, чтобы предотвратить вызов общих обработчиков экземпляра (которые не задают 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.

Реализация по умолчанию для общей обработки событий мыши в ContentElement прослушивает Mouse.PreviewMouseDown и преобразует ее в соответствующее локальное событие.The default implementation for general mouse event handling in ContentElement listens for Mouse.PreviewMouseDown and converts it to an appropriate local event. Если вы хотите переопределить эту логику, необходимо создать производный класс.If you want to override this logic, you must create a derived class. В статическом конструкторе производного класса Зарегистрируйте альтернативный обработчик класса для Mouse.PreviewMouseDown.In the static constructor of your derived class, register an alternative class handler for Mouse.PreviewMouseDown. Вы не можете изменить поведение обработки мыши ContentElement, переопределив OnPreviewMouseLeftButtonDown.You cannot change the mouse handling behavior of ContentElement by overriding OnPreviewMouseLeftButtonDown.

Кроме того, этот метод можно переопределить, чтобы изменить обработку событий для определенного состояния мыши.Alternatively, you can override this method in order to change event handling for a specific mouse state. Выбор способа вызова базовой реализации зависит от вашего сценария.Whether you choose to call the base implementation depends on your scenario. Сбой вызова Base отключает обработку ввода по умолчанию для этого события мыши в классах предков, которые также предполагают вызов OnPreviewMouseLeftButtonDown.Failing to call base disables default input handling for that mouse event on ancestor classes that also expect to invoke OnPreviewMouseLeftButtonDown. Например, можно создать производный от Button и переопределить OnPreviewMouseLeftButtonDown в производном классе, не вызывая базовую реализацию. Однако это переопределение отключает событие Click.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.

Применяется к