c# - 禁用粗体按钮

标签 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 开始使用功能区控件。

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

最佳答案

恐怕答案确实是不可能的。

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

即使它可行,它也会涉及一些严肃的编码并且容易出错。

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

关于c# - 禁用粗体按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13565129/

相关文章:

c# - 客户端 GET 请求没有返回任何内容?

vba - 与当前工作簿中的工作表名称相关的公式

c# - 如何在 n-n 关系中获得最频繁重复的对象?

asp.net-mvc-3 - 通过NuGet安装ServiceStack Web服务框架然后出现异常

没有等待或返回的 C# 异步任务方法

c# - 在 WinCE 中发出哔哔声,可能吗?

c# - MVC、C# 中的小数符号问题?

excel - 如何计算 Microsoft Excel 中的目标年数

vba - 使用 VBA 的日期序列

c#-4.0 - 为什么不到处使用 var 呢?