禁用粗体按钮

时间:2012-11-26 12:45:42

标签: c# excel c#-4.0 excel-2007 office-2007

我想在Excel工作表中禁用“粗体”切换按钮。

我该怎么做?

我有以下代码,但它不起作用:

CommandBarControl test = excel1.Application.CommandBars["Formatting"].FindControl(Id:113,Recursive:true);
if (test.Enabled)
{
MessageBox.Show(test.Caption + " enabled");
test.Visible = false;
test.Enabled = false;
}

我认为它不起作用,因为从Office 2007开始他们正在使用功能区控件。

任何人都可以帮助如何控制特定按钮吗?这样我就可以更改它的属性,默认启用/禁用它等等。

2 个答案:

答案 0 :(得分:1)

我担心答案确实是不可能的。

我一直在研究类模块的可能性,因为我认为使用类,您可以拦截将文本更改为粗体然后取消该事件的事件。但是,我能找到的所有内容都与其他事件有关(价值变化,计算,工作簿结构变更等)。

即使它会起作用,也会涉及一些严重的编码并且容易出错。

也许你会以错误的方式去做 - 你删除这个按钮的原因是什么?可能还有另一种解决方案。 如前所述,删除按钮不会阻止使用ctrl + B或粘贴粗体文本的可能性 - 你根本无法阻止这种情况。

答案 1 :(得分:0)

不是你想要的答案,我敢肯定,但我担心这不可能。