UIElement.MouseLeftButtonDown Evento

Definição

Ocorre quando o botão esquerdo do mouse é pressionado enquanto o ponteiro do mouse está sobre este elemento.Occurs when the left mouse button is pressed while the mouse pointer is over this element.

public:
 virtual event System::Windows::Input::MouseButtonEventHandler ^ MouseLeftButtonDown;
public event System.Windows.Input.MouseButtonEventHandler MouseLeftButtonDown;
member this.MouseLeftButtonDown : System.Windows.Input.MouseButtonEventHandler 
Public Custom Event MouseLeftButtonDown As MouseButtonEventHandler 

Implementações

Comentários

Embora esse evento roteado pareça seguir uma rota de bolha por meio de uma árvore de elementos, na verdade é um evento roteado direto que é gerado e relevantado ao longo da árvore de elementos por cada UIElement.Although this routed event seems to follow a bubbling route through an element tree, it actually is a direct routed event that is raised and reraised along the element tree by each UIElement.

Esse evento é um dos vários eventos relacionados que relatam as especificações do botão do mouse de um evento de Mouse.MouseDown subjacente, que é um evento anexado que é processado por cada elemento ao longo de uma rota de evento.This event is one of several related events that report the mouse-button specifics of an underlying Mouse.MouseDown event, which is an attached event that is processed by each element along an event route.

Os dados de evento desse evento expõem os dados de evento do evento de Mouse.MouseDown subjacente.The event data of this event exposes the event data of the underlying Mouse.MouseDown event. Se esse evento for marcado como manipulado ao longo da rota de eventos, os eventos específicos do botão do mouse ainda serão gerados; no entanto, os manipuladores dos eventos específicos do botão do mouse devem ser adicionados chamando explicitamente AddHandler, com a opção de manipular eventos que já estão marcados como manipulados, a fim de serem ouvintes para o evento.If that event is marked as handled along the event route, the mouse-button specific events are still raised; however, handlers of the mouse-button specific events must be added by explicitly calling AddHandler, with the option to handle events that are already marked as handled, in order to be listeners to the event. Se você marcar MouseLeftButtonDown manipuladas, você está essencialmente marcando Mouse.MouseDown manipulado para todos os ouvintes adicionais ao longo da rota e em todos os eventos relacionados.If you mark MouseLeftButtonDown handled, you are essentially marking Mouse.MouseDown handled for all further listeners along the route, and on all related events. Isso possivelmente inclui eventos gerados pelo manipulador de classe, como MouseDoubleClick.This possibly includes class-handler generated events such as MouseDoubleClick.

Conceitualmente, considere esse evento (e outros eventos de botão do mouse no UIElement) como um "serviço" de mouse (com a definição de serviço fornecida pela classe Mouse).Conceptually, think of this event (and other mouse-button events on UIElement) to be a mouse "service" (with the service definition provided by the Mouse class). O evento adiciona a conveniência de não precisar verificar os Estados do botão do mouse (da esquerda para a direita, para cima para baixo) dos eventos do mouse original nos dados do evento.The event adds the convenience of not needing to check the mouse button states (left-right, up-down) of the original mouse events in the event data. Para cenários mais avançados, como a verificação de Estados de botões não padrão, talvez seja necessário usar as APIs na classe Mouse em vez daquelas em UIElement.For more advanced scenarios, such as checking for states of non-standard buttons, you might need to use the APIs on the Mouse class rather than those on UIElement.

Importante

Algumas classes de controle podem ter manipulação de classe inerente para eventos de botão do mouse.Some control classes might have inherent class handling for mouse button events. O evento do botão esquerdo do mouse é o evento mais provável para ter manipulação de classe em um controle.The left mouse button down event is the most likely event to have class handling in a control. A manipulação de classe geralmente marca o evento de classe de Mouse subjacente como manipulado.The class handling often marks the underlying Mouse class event as handled. Depois que o evento é marcado como manipulado, outros manipuladores de instância anexados a esse elemento não são gerados normalmente.Once the event is marked handled, other instance handlers that are attached to that element are not ordinarily raised. Quaisquer outros manipuladores de classe ou de instância anexados a elementos na direção de bolha em direção à raiz na árvore de interface do usuário também não são gerados normalmente.Any other class or instance handlers that are attached to elements in the bubbling direction towards the root in the UI tree are also not ordinarily raised.

Você pode resolver o problema descrito no importante anterior e ainda receber eventos de MouseLeftButtonDown para os eventos do botão esquerdo do mouse para baixo em uma classe derivada que tem manipulação de classe usando uma destas soluções:You can resolve the issue that is outlined in the preceding Important and still receive MouseLeftButtonDown events for left mouse button down events on a derived class that has class handling by using either of these solutions:

  • Anexe manipuladores para o evento PreviewMouseDown, que não está marcado como manipulado pelos controles.Attach handlers for the PreviewMouseDown event, which is not marked as handled by the controls. Observe que, como esse é um evento de visualização, a rota começa na raiz e faz o túnel para baixo até o controle.Notice that because this is a preview event, the route starts at the root and tunnels down to the control.

  • Registre um manipulador no controle em procedimento chamando AddHandler e escolhendo a opção de assinatura que permite que os manipuladores escutem eventos, mesmo que eles já estejam marcados como manipulados nos dados do evento roteado.Register a handler on the control procedurally by calling AddHandler and choosing the signature option that enables handlers to listen for events even if they are already marked as handled in the routed event data.

Informações Sobre Eventos RoteadosRouted Event Information

Campo de identificadorIdentifier field MouseLeftButtonDownEvent
Estratégia de roteamentoRouting strategy EncaminheDirect
DelegadoDelegate MouseButtonEventHandler

Aplica-se a

Veja também