加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

如何在WPF窗口中处理“Esc”键?

发布时间:2020-12-14 01:51:34 所属栏目:Windows 来源:网络整理
导读:我想要Escape键来关闭我的 WPF窗口.但是,如果有一个控件可以使用该Escape键,我不想关闭Window.有关按ESC键时如何关闭WPF窗口的多种解决方案.例如. How does the WPF Button.IsCancel property work? 但是,此解决方案会关闭Window,而不考虑是否存在可以使用Es
我想要Escape键来关闭我的 WPF窗口.但是,如果有一个控件可以使用该Escape键,我不想关闭Window.有关按ESC键时如何关闭WPF窗口的多种解决方案.例如. How does the WPF Button.IsCancel property work?

但是,此解决方案会关闭Window,而不考虑是否存在可以使用Escape键的活动控件.

例如.我有一个带有DataGrid的Window. dataGrid上的一列是组合框.如果我正在更改ComboBox,并点击Escape,那么控件应该来自编辑comboBox(正常行为).如果我现在再次击中Escape,那么Window应该关闭.我想要一个通用的解决方案,而不是编写大量的自定义代码.

如果你能用C#提供解决方案那就太棒了.

解决方法

您应该只使用KeyDown事件而不是PreviewKeyDown事件.如果Window的任何子项处理事件,它将不会冒泡到Window(从Window向下的PreviewKeyDown隧道),因此不会调用您的事件处理程序.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读