我们正在构建一个使用热键的应用程序,它是现有 Windows 应用程序的 Web UI。 通常你可以检查一下
Keyboard.Modifiers == ModifierKeys.Alt
但是,当您使用 Alt 组合键时,浏览器会捕获 Alt 键击以查看它是否可以处理它。
到目前为止,我所看到的解决此问题的唯一方法是手动连接 DOM 中的按键事件,如下所示:
System.Windows.Browser.HtmlPage.Document.Body.AttachEvent("onkeydown", new EventHandler<System.Windows.Browser.HtmlEventArgs>(OnBodyKeyDown));
然后让您的代码检查带有标志的信号是否按下了 Alt 键。 这是描述here .
KeyEventArgs
是密封的,所以您不能自己引发它,也不能直接设置 Modifiers。
显然这不是一个理想的情况,有没有人知道如何更好地实现这一点?
[我们正在使用 Silverlight 3.0。]
最佳答案
从 v3.0 开始似乎没有办法做到这一点。
关于javascript - 如何在 Silverlight 中检测 ALT 组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1205342/