有什么区别KeyEventArgs.systemKey
and KeyEventArgs.Key
?在 WPF Usercontrol 类中捕获按键事件是否可以,如下所示。
protected override void OnKeyDown(KeyEventArgs e)
{
base.OnKeyDown(e);
if(e.SystemKey == Key.LeftAlt || e.SystemKey == Key.LeftCtrl || e.SystemKey == Key.RightAlt)
{
this.Focus();
CloseAnyOpenPopups();
}
}
Thanks
因为 Alt 键将由系统处理e.SystemKey
是查明 Alt 是否被按下的唯一可能性。该物业Key
只会回来Key.System
.
为了确保您始终获得正确的密钥,您可以使用以下表达式:
Key key = (e.Key == Key.System ? e.SystemKey : e.Key);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)