UIElement.OnMouseRightButtonDown(MouseButtonEventArgs) Метод

Определение

Вызывается, когда необработанное перенаправленное событие MouseRightButtonDown встречает на своем маршруте элемент, производный от этого класса.Invoked when an unhandled MouseRightButtonDown 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:
 virtual void OnMouseRightButtonDown(System::Windows::Input::MouseButtonEventArgs ^ e);
protected virtual void OnMouseRightButtonDown (System.Windows.Input.MouseButtonEventArgs e);
abstract member OnMouseRightButtonDown : System.Windows.Input.MouseButtonEventArgs -> unit
override this.OnMouseRightButtonDown : System.Windows.Input.MouseButtonEventArgs -> unit
Protected Overridable Sub OnMouseRightButtonDown (e As MouseButtonEventArgs)

Параметры

e
MouseButtonEventArgs

Объект класса MouseButtonEventArgs, содержащий данные о событии.The MouseButtonEventArgs that contains the event data. Данные о событии информируют о нажатии правой кнопки мыши.The event data reports that the right mouse button was pressed.

Комментарии

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

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

Кроме того, этот метод можно переопределить, чтобы изменить обработку событий для определенного состояния мыши.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 отключает обработку ввода по умолчанию для этого события мыши в классах предков, которые также предполагают вызов OnMouseRightButtonDown.Failing to call base disables default input handling for that mouse event on ancestor classes that also expect to invoke OnMouseRightButtonDown. Например, можно создать производный от Control и переопределить OnMouseRightButtonDown в производном классе без вызова Base; Однако это переопределение отключает службы контекстного меню элемента управления, которые являются частью поведения по умолчанию Control.For example, you can derive from Control and override OnMouseRightButtonDown in your derived class without calling base; however, this override disables the context menu services on your control, which are part of the Control default behavior.

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