UIElement.MouseLeftButtonDown Evento

Definición

Se produce al presionar el botón primario del mouse mientras el puntero se encuentra sobre este elemento.

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 

Tipo de evento

Implementaciones

Comentarios

Aunque este evento enrutado parece seguir una ruta de propagación a través de un árbol de elementos, en realidad es un evento enrutado directo que se genera y se rerera a lo largo del árbol de elementos por cada UIElement.

Este evento es uno de varios eventos relacionados que notifican los detalles del botón del mouse de un evento subyacente Mouse.MouseDown , que es un evento adjunto que procesa cada elemento a lo largo de una ruta de eventos.

Los datos de evento de este evento exponen los datos del evento subyacente Mouse.MouseDown . Si ese evento se marca como controlado a lo largo de la ruta del evento, se siguen produciendo eventos específicos del botón del mouse; Sin embargo, los controladores de los eventos específicos del botón del mouse deben agregarse mediante una llamada explícita a AddHandler, con la opción de controlar los eventos que ya están marcados como controlados, con el fin de ser agentes de escucha para el evento. Si marca MouseLeftButtonDown el controlador, básicamente se marca Mouse.MouseDown para todos los agentes de escucha más a lo largo de la ruta y en todos los eventos relacionados. Esto posiblemente incluye eventos generados por el controlador de clases, como MouseDoubleClick.

Conceptualmente, piense en este evento (y otros eventos de botón del mouse en UIElement) para ser un "servicio" del mouse (con la definición de servicio proporcionada por la Mouse clase ). El evento agrega la comodidad de no necesitar comprobar los estados del botón del mouse (izquierda derecha, arriba hacia abajo) de los eventos originales del mouse en los datos del evento. Para escenarios más avanzados, como la comprobación de estados de botones no estándar, es posible que tenga que usar las API de la Mouse clase en lugar de las de UIElement.

Importante

Algunas clases de control pueden tener control de clases inherentes para eventos de botón del mouse. El evento de botón izquierdo del mouse hacia abajo es el evento más probable que tenga control de clases en un control. El control de clases suele marcar el evento de clase subyacente Mouse como controlado. Una vez que el evento está marcado como controlado, otros controladores de instancia que están asociados a ese elemento no se generan normalmente. Cualquier otro controlador de clase o instancia que esté asociado a elementos en la dirección de propagación hacia la raíz del árbol de la interfaz de usuario tampoco se eleva normalmente.

Puede resolver el problema que se describe en el elemento Importante anterior y seguir recibiendo MouseLeftButtonDown eventos para eventos de botón izquierdo del mouse hacia abajo en una clase derivada que tiene control de clases mediante cualquiera de estas soluciones:

  • Adjuntar controladores para el PreviewMouseDown evento, que no está marcado como controlado por los controles. Tenga en cuenta que, dado que se trata de un evento de vista previa, la ruta comienza en la raíz y los túneles hacia abajo hasta el control.

  • Registre un controlador en el control mediante una llamada AddHandler a y elija la opción de firma que permite a los controladores escuchar eventos aunque ya estén marcados como controlados en los datos de eventos enrutados.

Información sobre eventos enrutados

Campo identificador MouseLeftButtonDownEvent
Estrategia de enrutamiento Directo
Delegado MouseButtonEventHandler
  • Invalide OnMouseLeftButtonDown para implementar el control de clases para este evento en clases derivadas.

Se aplica a

Consulte también