Partilhar via


UIElement.OnPreviewMouseRightButtonDown(MouseButtonEventArgs) Método

Definição

Invocado quando um evento roteado PreviewMouseRightButtonDown sem tratamento atinge um elemento em sua rota que deriva dessa classe. Implemente esse método para adicionar tratamento de classe a esse evento.

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

Parâmetros

e
MouseButtonEventArgs

O MouseButtonEventArgs que contém os dados do evento. Os dados do evento relatam que o botão direito do mouse foi pressionado.

Comentários

O PreviewMouseRightButtonDown evento parece viajar por uma rota de túnel, mas na verdade viaja de maneira indireta. Mouse.PreviewMouseDown é o evento subjacente que é roteado por túnel e cada UIElement um ao longo da rota de evento usa manipulação idêntica para gerar o evento MouseRightButtonDownroteado direto . Embora você possa marcar o PreviewMouseRightButtonDown evento como manipulado para fins desse elemento, o estado manipulado não perpetua para outros elementos ao longo da rota do evento. 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.

A implementação padrão para manipulação geral de eventos do mouse em escuta Mouse.PreviewMouseDown e a converte em UIElement um evento local apropriado. Se você quiser substituir essa lógica, deverá criar uma classe derivada. No construtor estático da classe derivada, registre um manipulador de classe alternativo para Mouse.PreviewMouseDown. Você não pode alterar o comportamento de manipulação do mouse de UIElement substituindo OnPreviewMouseRightButtonDown.

Como alternativa, você pode substituir esse método para alterar a manipulação de eventos para um estado específico do mouse. Se você optar por chamar a implementação base depende do seu cenário. A falha ao chamar base desabilita o tratamento de entrada padrão para esse evento de mouse em classes ancestrais que também esperam invocar OnPreviewMouseRightButtonDown. Por exemplo, você pode derivar de Control e substituir OnPreviewMouseRightButtonDown em sua classe derivada sem chamar base; no entanto, essa substituição desabilita os serviços de menu de contexto em seu controle, que fazem parte do Control comportamento padrão.

Aplica-se a