我在VSTO Outlook加载项中有一个自定义任务窗格,其中包含System.Windows.Forms.WebBrowser
控件。一切正常但在Web表单中DEL和BACKSPACE键不起作用。好像有些东西在进入浏览器之前就会吃掉这些密钥。
任何指针都表示赞赏。
编辑:
似乎单击WebBrowser
不会激活父任务窗格。如果我将一个简单的TextBox
添加为WebBrowser
的兄弟,然后使用鼠标单击TextBox
,则任务窗格的标题栏颜色会发生变化,表明它已获得焦点。接下来,如果我点击WebBrowser
,Del和Backspace就会开始工作。
如果我从任务窗格中删除焦点并通过单击WebBrowser
返回到该焦点,则任务窗格不会获得焦点(标题栏仍然涂有未聚焦的颜色),并且Del和Backspace问题再次出现。
为什么任务窗格不知道浏览器获得焦点?
答案 0 :(得分:0)
免责声明:我的回答与Outlook插件无关,但它可能有助于未来的访问者,他们可能会使用搜索引擎找到此页面(与我一样)。它与所描述的问题有关,但在不同的背景下。
今天是2017年,没有任何答案有效(删除,链接和谷歌搜索找到的其他人)。我发现在我的情况下(网页中的嵌入式ActiveX控件),DEL和BACKSPACE以及其他控制键(HOME,END,箭头键)在我按下TAB后开始工作,并在此之后继续工作。
我添加了
obj.focus();
在我的Javascript中设置.Url
之后,它立即神奇地解决了问题(obj
是我用.NET编写的ActiveX浏览器,使用WPF浏览器控件)。
SendKeys,从中设置焦点>> .NET 中的控件和拦截键无效。