UIElement3D.MouseLeftButtonDown Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 esta introducción a los eventos enrutados 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 UIElement3D.
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 UIElement3D) 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 UIElement3D.
Importante
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.