wpf:如何处理 Datagrid 的 KeyDown 事件?
我在 wpf 中的 datagrid 控件有问题。当我按 Enter 键时,我想加载一组控件中的选定项目,但似乎 datagrid.KeyDown 已被处理并转到下一个项目。
我尝试使用 keyup 但当 datagrid keydown 被触发并且 datagrid 转到下一个项目时会触发此事件。
有什么想法可以完全处理 keydown 吗?
I have a problem with datagrid control in wpf . when I press enter I want to load selected items in a set of controls, but it seems that datagrid.KeyDown is already handled and it goes to the next item.
I tried using keyup but this event fires when the datagrid keydown had been fired and datagrid goes to the next item.
any idea to handle keydown completely ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用
PreviewKeyDown
事件而不是KeyDown
Use the
PreviewKeyDown
event instead ofKeyDown
也许 KeyDown 由 ClassHandler 处理。
实例侦听器位于类侦听器之后。
MSDN 上有很好的解释。
Maybe KeyDown is handled by a ClassHandler.
Instance listeners come after class listeners.
A good explanation on MSDN.
您可以向事件添加以逗号分隔的处理程序列表...
这会在 keydown 事件的同时触发“预览”事件的处理,因此您不必编写多个模块。
You can add a comma-separated list of handlers to an event...
This triggers handling of the "preview" event at the same time as the keydown event, so you don't have to write more than one module.