首页 > 代码库 > wpf button的mouse(leftbutton)down/up,click事件不响应解决办法

wpf button的mouse(leftbutton)down/up,click事件不响应解决办法

按照WPF的帮助说明,某些控件的路由事件被内部处理了,已经被标记为Handled,自行定义的事件处理代码便不再起作用了,有时候会很郁闷!

 
      不过WPF提供了必要的方法。
 
      1)使用相应的Preview事件。须注意隧道类型的事件是从根元素开始执行的。
 
      2)使用AddHandler添加自定义的路由事件。
 
第一种解决办法就不在说明了
 
第二种以button为例,用AddHandler添加事件,如下
 
            Btn.AddHandler(Button.MouseLeftButtonDownEvent, new MouseButtonEventHandler(Btn_MouseLeftButtonDown), true);
            Btn.AddHandler(Button.MouseRightButtonDownEvent, new MouseButtonEventHandler(Btn_MouseRightButtonDown), true);
            Btn.AddHandler(Button.MouseLeftButtonUpEvent, new MouseButtonEventHandler(Btn_MouseLeftButtonUp), true);    www.2cto.com
            Btn.AddHandler(Button.MouseMoveEvent, new MouseEventHandler(Btn_MouseMove), true);
则以上四个所添加的事件就可以使用了

wpf button的mouse(leftbutton)down/up,click事件不响应解决办法