Exportar (0) Imprimir
Expandir Tudo
Expandir Minimizar
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Método UIElement3D.OnPreviewMouseDown

Chamado quando um não tratada Mouse.PreviewMouseDown anexado roteados eventos atinge um elemento em sua rota que é derivado dessa classe. Implemente este método para adicionar classe tratamento para este evento.

Namespace:  System.Windows
Assembly:  PresentationCore (em PresentationCore.dll)

protected internal virtual void OnPreviewMouseDown(
	MouseButtonEventArgs e
)

Parâmetros

e
Tipo: System.Windows.Input.MouseButtonEventArgs
O MouseButtonEventArgs que contém os dados do evento. Os dados do evento relata que uma ou mais botões do mouse foram pressionados.

Ações de botão do mouse também são tratadas por um gerente de entrada dedicado. Outros recursos de programação que contam com ações de botão do mouse, como, por exemplo, entrada e comando ligações, pode chamar manipuladores para a ação antes que ele é exposto como uma ação de botão do mouse geral. Se esses marca de recursos de sistema de entrada do Mouse.PreviewMouseDown o evento como manipulado, OnPreviewMouseDown não é invocado.

Se você usar esse manipulador de classe para marcar o evento como manipulado, afetar potencialmente os seguintes eventos: PreviewMouseLeftButtonDown e PreviewMouseRightButtonDown. Desses eventos podem ser aumentados no elemento de recepção quando Mouse.PreviewMouseDown é recebido.

Se você marcar este evento como manipulado no tratamento de classe, subevents ainda são gerados; No entanto, eles passam o estado manipulado nos dados de evento. Se o evento é tratado na manipulação de classe, manipuladores de instância para os subevents não são invocados a menos que explicitamente AddHandler(RoutedEvent, Delegate, Boolean) com handledEventsTootrue para anexar manipuladores.  Manipuladores de classe também não são chamados, a menos que esses manipuladores de classe foram registrados com o RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) assinatura com handledEventsTootrue Pelo tratamento OnPreviewMouseDown, você está indicando que o tratamento de classe contabilizados para todos os botões do mouse possíveis para baixo de ações. Esse comportamento pode ser indesejado. Portanto, tenha cuidado ao usar esse método virtual para marcar eventos como manipulado.

Cada um dos eventos específicos do botão diretos também tem uma virtual no * método; Considere a possibilidade de se substituir esses manipuladores de classe de botão específicas pode ser mais apropriado.

Este método não tem nenhuma implementação padrão. Porque uma classe intermediária na herança pode implementar este método, é recomendável que você chama a implementação base em sua implementação.

A finalidade desse método é semelhante do common language runtime (CLR) padrão de evento em * métodos: este método fornece os meios para manipular o evento correspondente a partir de classes derivadas, estabelecendo um manipulador de classe em vez de um manipulador de instância. Nesse caso, o evento correspondente é um evento roteado. O padrão de implementação dos métodos diante * é diferente para os eventos roteados porque um evento roteado pode ser disparado por um elemento filho, que não é necessariamente o elemento que invocará manipuladores. Portanto, sua implementação precisa examinar as propriedades de fonte de dados do evento. Ele não deve tentar reraise o evento na maioria dos casos.

Substituindo este método ou por registrar manipuladores de classe RegisterClassHandler, derivada de classes de UIElement3D pode chamar métodos do manipulador classe particular quando o evento é recebido na rota de evento. Um cenário onde a manipulação de classe é apropriada é manipular os dados do evento e marcar o evento roteado como manipulado. Outro cenário que seja especificamente para os eventos de visualização é para marcá-los manipulados para que os manipuladores de classe bubbling correspondente não são invocados.

OnPreviewMouseDown é introduzido na.NET Framework versão 3.5. Para obter mais informações, consulte Arquitetura do .NET Framework 3.5.

.NET Framework

Com suporte em: 4.5, 4, 3.5 SP1, 3.0 SP1

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos do sistema do .NET Framework.

Contribuições da comunidade

ADICIONAR
A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2014 Microsoft