KeyEventArgs.systemKey和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();
}
}谢谢
发布于 2013-05-21 19:36:49
由于系统将使用e.SystemKey来处理Alt键,因此只有使用Alt键才能确定是否按下了Alt键。属性Key将只返回Key.System。
为了确保您始终获得正确的密钥,您可以使用以下表达式:
Key key = (e.Key == Key.System ? e.SystemKey : e.Key);https://stackoverflow.com/questions/16668798
复制相似问题