Firefox에서 Silverlight 2 앱을 테스트 할 때 Silverlight에 포커스가있을 때 Page.KeyDown 이벤트를 통해 모든 키를 누르는 데 문제가 없습니다.Silverlight에서 브라우저 키보드 처리 오버라이드 (IE7)
Internet Explorer 7에서 테스트 할 때 브라우저에서 처리하지 않은 키보드 이벤트 만받을 수 있습니다. 그러나, 나는 자바 스크립트에서 동일한 키보드 이벤트를 무시할 수 있습니다.
예 : Ctrl + D. 다음을 수행하여 javascript에서이를 무시할 수 있지만 Silverlight에서 동일한 작업을 수행 할 수 없습니다 !!
function initKeyHandling(){ document.attachEvent("onkeydown", keydown); }
function keydown(e) { printToTextbox('Keydown ', e); return false; }
...
initKeyHandling();
또한 자바 스크립트에서 Silverlight로 이벤트를 전달하려는 시도가 실패했습니다. Silverlight에 포커스가있을 때 자바 스크립트 키보드 이벤트 핸들러가 실행되지 않습니다.
내 사용자가 언제든지 바로 가기 키를 누르면 DIV에 항상 집중해야합니다. 맞습니까? 그게 미친 소리! –
문제는 Silverlight 플러그인이 항상 내 애플리케이션에 집중되어 있다는 것입니다. 숨겨진 div 태그에 포커스를 계속 설정하면 사용자는 JavaScript keyDown/Up을 전달하지 않으면 Silverlight KeyDown/Up 이벤트에 정의 된 바로 가기를 사용할 수 없습니다. 이벤트를 Silverlight로 가져온 다음 Silverlight 내부에서 처리합니다. –