C# 如何在Silverlight中覆盖键盘键的默认行为
我正在使用C# 如何在Silverlight中覆盖键盘键的默认行为,c#,silverlight,silverlight-4.0,keyboard-shortcuts,C#,Silverlight,Silverlight 4.0,Keyboard Shortcuts,我正在使用Silverlight 4.0,我试图在其中开发一个web应用程序。在这个应用程序中,我在浏览器中使用Ctrl+c、Ctrl+U等快捷键,同时使用Ctrl+U,调试窗口正在打开。是否有任何方法覆盖这些默认行为?如果希望阻止指定的默认操作,可以使用javascript document.body.onkeydown = function(e){ //verify the control press you want to prevent and call preventDefaul
Silverlight 4.0
,我试图在其中开发一个web应用程序。在这个应用程序中,我在浏览器中使用Ctrl+c、Ctrl+U等快捷键,同时使用Ctrl+U
,调试窗口正在打开。是否有任何方法覆盖这些默认行为?如果希望阻止指定的默认操作,可以使用javascript
document.body.onkeydown = function(e){
//verify the control press you want to prevent and call preventDefault()
//ex : if (e.ctrlKey && e.which == 84)
e.preventDefault();
};
您可以通过向文档中添加eventListner
来实现这一点
document.addEventListener('keydown', keydownevent);
function keydownevent (event){
if(event.ctrlKey && event.keyCode == 85){
event.preventDefault();
alert("You have pressed ctrl+u")
}
}
现在,文档将始终侦听按键事件
。为了删除此事件,当页面的socpe结束为时,需要从文档中删除eventListner
document.removeEventListener('keydown', keydownevent);
我需要同时访问Ctrl+U键,这是通过Javascript无法访问的。@VVN实际上你可以,如果按下Ctrl键,e.ctrlKey
将是true
。