UIElement.OnMouseRightButtonDown(MouseButtonEventArgs) Método

Definição

Invocado quando um evento roteado MouseRightButtonDown sem tratamento atinge um elemento em sua rota que deriva dessa classe.Invoked when an unhandled MouseRightButtonDown routed event reaches an element in its route that is derived from this class. Implemente esse método para adicionar tratamento de classe a esse evento.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)

Parâmetros

e
MouseButtonEventArgs

O MouseButtonEventArgs que contém os dados do evento.The MouseButtonEventArgs that contains the event data. Os dados do evento relatam que o botão direito do mouse foi pressionado.The event data reports that the right mouse button was pressed.

Comentários

O evento MouseRightButtonDown parece viajar uma rota de bolha, mas realmente viaja de forma indireta.The MouseRightButtonDown event appears to travel a bubbling route but actually travels in an indirect way. Mouse.MouseDown é o evento subjacente que é encaminhado por bolha, e cada UIElement ao longo da rota de eventos usa manipulação idêntica para gerar o evento roteado direto 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. Embora você possa marcar o evento MouseRightButtonDown como manipulado para fins deste elemento, o estado Handled não é perpetuado para outros elementos ao longo da rota de eventos.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. No entanto, talvez você queira marcar o evento como manipulado para impedir que manipuladores de instância geral (aqueles que não especificaram handledEventsToo) sejam invocados.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.

A implementação padrão para manipulação geral de eventos de mouse no UIElement escuta Mouse.MouseDown e converte-o em um evento local apropriado.The default implementation for general mouse event handling in UIElement listens for Mouse.MouseDown and converts it to an appropriate local event. Se você quiser substituir essa lógica, você deve criar uma classe derivada.If you want to override this logic, you must create a derived class. No construtor estático da classe derivada, registre um manipulador de classe alternativo para Mouse.MouseDown.In the static constructor of your derived class, register an alternative class handler for Mouse.MouseDown. Não é possível alterar o comportamento de manipulação do mouse de UIElement substituindo OnMouseRightButtonDown.You cannot change the mouse handling behavior of UIElement by overriding OnMouseRightButtonDown.

Como alternativa, você pode substituir esse método para alterar a manipulação de eventos para um estado de mouse específico.Alternatively, you can override this method in order to change event handling for a specific mouse state. Se você optar por chamar a implementação base depende do seu cenário.Whether you choose to call the base implementation depends on your scenario. Falha ao chamar base desabilita o tratamento de entrada padrão para esse evento de mouse em classes ancestrals que também esperam invocar OnMouseRightButtonDown.Failing to call base disables default input handling for that mouse event on ancestor classes that also expect to invoke OnMouseRightButtonDown. Por exemplo, você pode derivar de Control e substituir OnMouseRightButtonDown na classe derivada sem chamar base; no entanto, essa substituição desabilita os serviços do menu de contexto em seu controle, que fazem parte do comportamento padrão do 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.

Aplica-se a