我想在按钮处于鼠标按下状态(IsPressed)时调用一个方法,并在释放它时调用另一个方法。我似乎想不出一个简单的方法来做到这一点。
谢谢!
如果您处于可以使用绑定的情况,请在按钮的 IsPressed 属性上设置 OneWayToSource 绑定。当源属性更改时,执行您的代码。
无论如何按下按钮,这都应该有效。
您可以处理 MouseDown 和 MouseUp 事件以获得类似的效果。但这不会处理键盘(空格键)的情况。您必须使用 KeyDown 和 KeyUp 事件来做到这一点。
另请注意,如果用户在按下鼠标后将鼠标移动到不再位于按钮上方的位置,则 MouseDown 事件可能永远不会跟随 MouseUp 事件。(我认为您可以在 MouseDown 中捕获鼠标以保证您获得 MouseUp 事件)
当然有更好的方法然后尝试拦截鼠标事件。IsPressed 属性上的某种触发器?
此外,我相当确定您无法在按钮上获取某些鼠标事件,因为它正在被系统拦截。