C# excel多个workbook显示同一个taskpane

 时间:2026-02-14 06:45:08

1、首先在要显示taskpane的时候获取到当前窗口的句柄:

int hwnd = this.Application.ActiveWindow.Hwnd;

2、然后我们通过一个字典来获取当前窗口对应的taskpane是否创建

TaskPanels.TryGetValue(this.Application.ActiveWindow.Hwnd, out pane);

3、如果 pane 不存在 就创建并存储到字典中

UserControl ctrl= new UserControl();                Microsoft.Office.Tools.CustomTaskPane pane = this.CustomTaskPanes.Add(ctrl, "***", this.Application.ActiveWindow); /// 这一步很重要将决定是否显示到当前窗口,第三个参数的意思就是依附到那个窗口                pane.DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionRight;                pane.Width = 320;                TaskPanels.Add(this.Application.ActiveWindow.Hwnd, pane);

4、设置pane的Visible属性即可显示出来

pane.Visible = true;

C# excel多个workbook显示同一个taskpane

  • MSDN网站上的文件该怎么下载
  • 如何修复系统软件?
  • 电脑管家怎么不开机自动启动如何关闭开机自启动
  • win11创建系统还原点教程
  • 怎么处理无法找到脚本文件?
  • 热门搜索
    名字中间的点怎么打 蜗牛怎么养 老是咳嗽怎么办 胃息肉是怎么引起的 孩子发烧怎么物理降温 舌苔厚怎么办 释迦怎么吃 我的世界怎么做陷阱 脱肛是怎么回事 raw格式怎么打开