我想禁用 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 开始使用功能区控件。
任何人都可以帮助如何获得特定按钮的控制权?这样我就可以更改它的属性,默认启用/禁用它等等。
最佳答案
恐怕答案确实是不可能的。
我一直在研究类模块的可能性,因为我认为使用类可以拦截将文本更改为粗体的事件,然后取消该事件。但是,我能找到的所有内容都与其他事件有关(值更改、计算、工作簿结构更改等)。
即使它可行,它也会涉及一些严肃的编码并且容易出错。
也许您的做法不对 - 您删除此按钮的原因是什么?您的问题可能还有另一种解决方案。 如前所述,删除按钮不会阻止使用 ctrl+B 或粘贴粗体文本的可能性 - 您根本无法阻止这种情况。
关于c# - 禁用粗体按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13565129/