按下/未按下WPF按钮时的火灾事件

时间:2011-03-09 11:39:45

标签: wpf button

我需要在按下WPF按钮时(通过鼠标,键盘,触摸屏等)触发某些事件,并在未按下WPF按钮时触发事件。

怎么做?它应该很容易,但我找不到如何做到这一点。

3 个答案:

答案 0 :(得分:5)

您可以从Button派生并覆盖OnIsPressedChanged方法并在那里触发自定义事件。

或者您可以绑定到ButtonBase.IsPressed属性。

答案 1 :(得分:1)

另一种选择是使用DependencyPropertyDescriptor:

var descriptor = DependencyPropertyDescriptor.FromProperty(Button.IsPressedProperty, typeof(Button));
descriptor.AddValueChanged(this.button, new EventHandler(IsPressedChanged));

答案 2 :(得分:0)

如果您使用的是MVVM,则可以使用事件触发器来解决问题。这样,您仍然可以将UI要求与应用程序逻辑分开。