我一直在使用WPF中的所有隧道和冒泡事件,我必须说它们非常强大和实用。
但是我总是在考虑是否要使用[PreviewKeyUp和KeyUp]或者[PreviewKeyDown和Keydown]?
应该选择哪种组合来响应按键操作?为什么?
我一直在使用WPF中的所有隧道和冒泡事件,我必须说它们非常强大和实用。
但是我总是在考虑是否要使用[PreviewKeyUp和KeyUp]或者[PreviewKeyDown和Keydown]?
应该选择哪种组合来响应按键操作?为什么?
根据您想要做什么进行选择:
所以这取决于您想要做什么。如果要添加TextBox验证,请使用PreviewKeyDown忽略不正确的文本。
如果您想在用户松开空格键时执行某些操作,则使用KeyUp
这完全取决于情况,例如,在列表中选择项目将需要使用KeyDown,以便可以按住键并更改所选项目。
如果您有一个具有多个视觉状态的元素,例如按钮,则KeyDown可能会更改视觉状态,然后KeyUp将返回视觉到原始状态并执行命令。
在您的情况下,这将完全取决于您希望何时引发事件,我不会说其中任何一个比另一个更好,因为它们用于不同的用途。