【发布时间】:2018-05-12 09:29:48
【问题描述】:
我以为这很容易,但显然不是。我正在处理的报告中有一些来源被淘汰。这意味着我需要隐藏 2/3 的工作表并将隐藏的选项卡涂成红色,以明确哪些正在使用,哪些未使用。到目前为止,我尝试了多种方式的Tab.Color和Tab.ColorIndex,都没有找到方法。
全 ARGB:
System.Drawing.Color clr = System.Drawing.Color.FromArgb(255, 255, 0, 0);
int index = clr.ToArgb();
int hiddenTabColor = index;
...
worksheet.Tab.Color = hiddenTabColor;
添加 System.ComponentModel 以使用 Converter:
var converter = System.ComponentModel.TypeDescriptor.GetConverter(typeof(Color));
Color clr = (Color)converter.ConvertFromString("#FFFF0000");
...
worksheet.Tab.Color = clr;
我尝试了十几种排列方式,但均未成功。结果始终是一个将 xlAutomatic 显示为黑色的选项卡。我已经尝试过所有方法的重载。
重要信息是,这是在 Visual Studio 2013 中使用 Interop 写入 Microsoft Office Professional Plus 2013 (Excel)。
【问题讨论】:
-
你用
ColorIndex做了什么? -
workbook.Tab.ColorIndex = (ColorIndex)3; workbook.Tab.ColorIndex = (颜色)3;工作簿.Tab.ColorIndex = (Int32)3;工作簿..Tab.ColorIndex = (ColorIndex)Color.Red;每次使用颜色索引的错误是我需要投射。