Microsoft Developer Network > Página principal de foros > Windows Presentation Foundation (WPF) > What's wrong with the left mouse button in beta2?
Formular una preguntaFormular una pregunta
 

RespondidaWhat's wrong with the left mouse button in beta2?

  • jueves, 25 de mayo de 2006 19:42Konstantin GonikmanModeradorMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     

    That's weird, MouseDown and MouseLeftButtonDown are not working here. Left-clicking on the button, test1 and test2 event handlers are not hit. There's no problem with the right mouse button.

    <Button  MouseDown="test1" MouseLeftButtonDown="test2" MouseRightButtonDown="test3" />

    A bug?.. Can somebody repro this?

Respuestas

Todas las respuestas

  • jueves, 25 de mayo de 2006 20:16csammis Medallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     
    Button elements capture the left mouse down event via the Click event  (or right mouse down, if the system is configured for "right button" clicks), which is probably what's stopping your explicit MouseDown handlers.
  • jueves, 25 de mayo de 2006 20:20Konstantin GonikmanModeradorMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     
    Click event works as expected. But why should Click event hinder a MouseDown event?
  • jueves, 25 de mayo de 2006 20:23Konstantin GonikmanModeradorMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     

    Never mind, I've found an explanation on msdn:

     

    Working Around Event Suppression by Controls

    One scenario where preview events are used is for input events and controls. Sometimes, the creator of the control might wish to suppress a certain event from originating from their control, perhaps to substitute a component-defined event that carries more information or implies a more specific behavior. For instance, a Windows Presentation Foundation (formerly code-named "Avalon") Button suppresses normal MouseLeftButtonDown bubbling events in favor of a Click event. If other elements towards the root of your application still wanted an opportunity that event, one alternative is to handle even routed events. But a simpler way is to change the routing direction you handle to be the Preview equivalent PreviewMouseLeftButtonDown.

  • jueves, 25 de mayo de 2006 20:27LesterLobo - MSFTModeradorMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     Respondida
    try the PreviewMouseLeftButtonDown