C# Webbrowser控件放置在Outlook加载项中时不接收Tab/Delete/Back键
我正在构建一个Outlook加载项,它公开一个自定义任务窗格。在此窗格中,查看一些用户操作C# Webbrowser控件放置在Outlook加载项中时不接收Tab/Delete/Back键,c#,webbrowser-control,outlook-addin,C#,Webbrowser Control,Outlook Addin,我正在构建一个Outlook加载项,它公开一个自定义任务窗格。在此窗格中,查看一些用户操作 我创建了一个新的UserControl(其中包含一个WebBrowser控件) 获取Outlook消息窗口(使用Win API FindWindow(“rctrl_renwnd32”…) 将消息窗口的宽度调整为0 将my UserControl的父级设置为Outlook资源管理器主窗口(使用Win API User32.SetParent) 设置my UserControl的大小以占据messages窗口
p、 s:我有Java背景,所以在.NET&p/Invoke方面我算是个新手。WebBrowser控件用DLGC_WANTARROWS | DLGC_WANTCHARS响应WM_GETDLGCODE消息。这就是为什么它不能处理某些键,比如Tab、Back和Delete。它告诉家长不要处理那些钥匙 您可以编写一个windows钩子,然后调用webbrowser控件的IOleInPlaceActiveObject::TranslateAccelerator实现
查看1999年4月微软互联网开发人员斯科特·罗伯茨的“网络浏览器击键问题”,了解更多详细信息。Hi Sheng,我将对此进行进一步调查。我曾尝试过设置我自己的消息循环的早期选项,但也不太管用。将在未来几周内确认该问题。非常感谢您的回复。