【发布时间】:2023-03-28 01:38:01
【问题描述】:
我正在构建一个 VSTO 项目,其中包含一个包含树视图的简单操作窗格。来自VBA,事情相似,但不一样,我有点困惑。
我想要做的是将所有工作表加载到树视图中,并为每个节点提供相应工作表的颜色。我在下面的注释行中遇到错误,我相信错误来自 N.BackColor 是 RGB 和 SH.Tab.Color 是颜色代码的事实。
问题是我应该使用不同的属性来获得相同的颜色类型,还是需要转换它。如果我需要转换它,请帮助我,因为大部分文档都是用 C# 编写的,我不知道在哪里可以找到答案
Private Sub ActionPane_SheetSearch_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim SH As Excel.Worksheet, N As TreeNode
With Me
.Width = 200
End With
With Me.TreeView1
.ItemHeight = 20
For Each SH In Globals.ThisWorkbook.Sheets
N = .Nodes.Add(SH.Name)
N.Tag = SH.CodeName
'N.BackColor = SH.Tab.Color
Next
End With
End Sub
还有.Width = 200 我正在尝试自定义操作窗格的with,但它忽略了代码,或者我没有正确执行它。
我也尝试在开始时设置起始宽度,它没有响应。
请告诉我如何设置起始位置,并将默认位置设置为左侧而不是右侧。
Private Sub ThisWorkbook_Startup() Handles Me.Startup
Globals.ThisWorkbook.ActionsPane.Controls.Add(taskPane)
Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
taskPane.Width = 400
taskPane.Show()
End Sub
【问题讨论】:
-
如果没有设置标签颜色,那么
SH.Tab.Color将返回False(否则你会得到一个 Long) -
ActionsPane有一个Width属性,另请参阅docs.microsoft.com/en-us/visualstudio/vsto/…
标签: vba vb.net vsto customtaskpane