0

我正在使用 WebBrowser 控件作为 Excel 任务窗格的一部分。我们不想为每个创建的工作簿创建一个新的(这是在 Excel 2013 中,每个工作簿都有自己的任务窗格)并尝试使它们保持同步,因此我们让任务窗格创建一个单例浏览器控件的实例。

发生的情况是每个打开的工作簿都获取此 webbrowser 控件的实例,并为该工作簿显示它......并且停止为它之前的其他工作簿显示。这没关系,但是当用户在打开的工作簿之间切换时,我希望能够在活动工作簿的任务窗格上显示控件。

我添加了代码来捕获 Workbook Activate 事件,当它调用显示 webbrowser 控件时,它仍然指向 simgleton 实例......我只是不知道如何再次显示控件。

4

1 回答 1

1

我终于能够做到这一点,方法是在 Workbook Activate 事件期间调用任务窗格控件并从其容器控件中删除该控件,然后将其添加回容器控件。这当然不是我所说的这个问题的理想解决方案,但尝试典型的重绘调用在这种情况下不起作用。现在,活动工作簿任务窗格始终显示单个 Web 浏览器。

这个网络浏览器在 Excel 2010 中更容易实现,因为只有一个任务窗格!希望这对其他人有帮助...

于 2015-03-15T00:11:50.320 回答