【发布时间】:2023-03-03 08:09:27
【问题描述】:
我需要在按下 WPF 按钮(通过鼠标、键盘、触摸屏等)时触发一些事件,并在未按下 WPF 按钮时触发事件。
如何做到这一点?这应该很容易,但我找不到如何做到这一点。
【问题讨论】:
我需要在按下 WPF 按钮(通过鼠标、键盘、触摸屏等)时触发一些事件,并在未按下 WPF 按钮时触发事件。
如何做到这一点?这应该很容易,但我找不到如何做到这一点。
【问题讨论】:
您可以从 Button 派生并覆盖 OnIsPressedChanged 方法并在那里触发自定义事件。
或者您可以绑定到ButtonBase.IsPressed 属性。
【讨论】:
另一种选择是使用 DependencyPropertyDescriptor:
var descriptor = DependencyPropertyDescriptor.FromProperty(Button.IsPressedProperty, typeof(Button));
descriptor.AddValueChanged(this.button, new EventHandler(IsPressedChanged));
【讨论】: