WebBrowser快捷方式无法在PowerPoint加载项中运行…但WebBrowserShortcutsEnabled为true

我正在构建一个基于嵌入式浏览器的powerpoint插件。 但是,出于某种原因,标准快捷方式不起作用。 WebBrowserShortcutsEnabled属性设置为true(尽管我甚至尝试将其设置为false,以防我处于倒退世界)。 将它剥离到裸露的骨头,我的重复步骤是:

  • 创建一个新项目,选择PowerPoint 2013外接程序项目类型
  • 将新的用户控件添加到项目中
  • 将WebBrowser添加到该控件,从工具箱中拖动它
  • 在该属性面板中将该WebBrowser上的URL设置为例如google
  • 将此代码添加到ThisAddIn_Startup方法,以便面板立即显示:

    private void ThisAddIn_Startup(object sender, System.EventArgs e) { var ctrl = new UserControl1(); var ctp = this.CustomTaskPanes.Add(ctrl, "test"); ctp.Visible = true; } 

在PowerPoint中键入WebBrowser工作正常,但Ctrl + X / C / V,Del,Tab等都没有效果。

我已经尝试在Web浏览器上覆盖OnKeyPress方法,并添加了一个PreviewKeyDownEventHandler,但这两种方法中的断点都没有被击中。 我还validation了WebBrowserShortcutsEnabled在运行时仍然是真的并且没有以某种方式被更改。

我开始怀疑它可能是一个环境问题,但我不知道根本原因是什么。 我正在运行Windows 8.1,VS 2012和PowerPoint 2013,目标是.NET 4.5。 我也尝试在Windows 7上的PowerPoint 2010上安装相同的基本插件,结果相同。

有没有人能够了解我可能出现的问题?

谢谢

看起来将Web浏览器放在Windows窗体中,并将​​其显示为模式窗口,而不是使用自定义任务窗格使快捷方式按预期工作。