Excel VSTO开发10 -自定义任务面板

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。

10 自定义任务面板

自定义任务面板(有些地方称为侧边面板)即CustomTaskPane,这个类在Microsoft.Office.Tools下面。以下将详细讲述如何实现自定义任务面板。

代码6 CustomTaskPane的创建和使用

向项目添加一个"用户控件",

19 选择"用户控件"

在开发界面根据需要向用户控件窗体上增加相应内容。

20 设计"用户控件"界面

在ThisAddIn类代码下面添加:

'定义一个带事件的自定义任务面板

Public WithEvents AboutTaskPan As Microsoft.Office.Tools.CustomTaskPane

在ThisAddIn_Startup()中添加

'插件启动时候

Private Sub ThisAddIn_Startup() Handles Me.Startup

System.Diagnostics.Debug.WriteLine("Startup")

Dim userAbout As New UserControl1

'添加自定义任务面板,将会显示用户控件

AboutTaskPan = Globals.ThisAddIn.CustomTaskPanes.Add(userAbout, "任务面板")

AboutTaskPan.Visible = True

AboutTaskPan.DockPosition = Microsoft.Office.Core.MsoCTPDockPosition. msoCTPDockPositionRight

End Sub

运行结果如下:

21 Excel 窗口右侧显示"任务面板"

在Ribbon开发界面下添加一个Group3,并在上面增加一个ToggleButton1:

22 Ribbon界面下增加 ToggleButton

双击ToggleButton1,添加代码:

Private Sub ToggleButton1_Click(sender As Object, e As RibbonControlEventArgs) Handles ToggleButton1.Click

Globals.ThisAddIn.AboutTaskPan.Visible = ToggleButton1.Checked

End Sub

继续在ThisAddIn类代码下面添加如下代码:

Private Sub AboutTaskPan _VisibleChanged(sender As Object, e As EventArgs) Handles AboutTaskPan.VisibleChanged

Dim aboutribbon As Ribbon1 = Globals.Ribbons(0) '.GetRibbon("Ribbon1")

aboutribbon.ToggleButton1.Checked = AboutTaskPan.Visible

End Sub

上述代码在单击ToggleButton1后,根据ToggleButton1被选中的状态来决定是否显示"任务面板",同时关闭"任务面板"时,调整ToggleButton1的显示。

相关推荐
UXbot20 分钟前
如何选择适合公司项目的UI设计工具?企业选型指南
前端·低代码·ui·团队开发·原型模式·设计规范·web app
UXbot4 小时前
原型设计工具如何帮助新人快速进入产品行业?
前端·低代码·ui·交互·团队开发·原型模式·web app
烈焰晴天8 小时前
Codex 桌面端如何链接Figma MCP 服务器拿到 Figma设计稿精准尺寸等结构化数据 来精准还原UI
服务器·ui·figma
狼哥168612 小时前
防沉迷控制实战新特性接入
ui·华为·harmonyos
asdzx6714 小时前
Python 优雅解析 Excel:从原生行列到强类型对象的三层数据结构演进
数据结构·python·excel
狼哥168614 小时前
学习卡片案例新特性接入
ui·华为·harmonyos
zdr尽职尽责15 小时前
Unity录像功能
学习·ui·unity·游戏引擎
罗政16 小时前
AI工作流实现Excel自动化+SQL,零 VBA ,零公式,电商订单分析案例 | DTBot
sql·自动化·excel
山东布谷网络科技16 小时前
海外直播语聊APP功能与UI升级的关键关注点
开发语言·ui·app store·谷歌上架·海外直播app开发·海外语聊平台搭建·多语言直播平台定制
AC赳赳老秦1 天前
OpenClaw+Power Apps 实战:自动生成 Power Apps 应用、连接 Excel 数据源
大数据·开发语言·python·serverless·excel·deepseek·openclaw