我们进行vsto开发时,当在excel里面定义CustomTaskPane任务窗时,都会碰到这样一个问题,同时打开多份excel文档时,CustomTaskPane只会显示在第一个excel里面文档里,也就是说,CustomTaskPane 并不是相互独立的,接下来我就说说我在开发中解决这个问题的办法,当然有更好的办法欢迎指导。
- 首先,我们定义TaskPanels 集合,用来存放已经创建的CustomTaskPane和它对应的窗体句柄
Public TaskPanels As Dictionary(Of String, Microsoft.Office.Tools.CustomTaskPane) = New Dictionary(Of String, Microsoft.Office.Tools.CustomTaskPane)
-
获取当前活动的excel窗体句柄
Dim hwnd As Integer = Globals.ThisAddIn.Application.ActiveWindow.Hwnd
- 定义CustomTaskP