【发布时间】:2013-02-13 00:32:43
【问题描述】:
我们有一个我维护的自定义加载项功能区(不是 COM 共享的“可扩展性”加载项),它使用 cmets 和跟踪更改功能(例如,有几个与插入、查找、编辑和删除相关的按钮),但我们最近发现一些用户错误地使用了“评论”功能区的评论按钮。
因此,当用户通过加载项加载文档时,我被要求阻止此操作。目前,我只是想弄清楚如何:
a) 将 Review 功能区的添加评论按钮单击事件处理到我现有的事件处理程序,或者
b) 禁用 Review 功能区的添加评论按钮
我似乎无法发现其中任何一个都是可能的项目;我已经部署了一个,不想仅仅为了这个小需求而创建第二个。有什么想法吗?
【问题讨论】:
-
您是否尝试过使用 CommandBar 控件?通过 id 找到它,然后禁用它
-
我正在尝试使用 CommandBar 运气不佳...我正在使用 Globals.ThisAddIn.Application.CommandBars 对象,但我可以使用什么方法通过 id 找到它?我知道控件名称是“ReviewNewComment”。
-
也许我需要先查找命令栏(例如 Globals.ThisAddIn.Application.CommandBars("TabReviewWord") 但这只会引发 ArgumentException“值不在预期范围内”。
-
我想通了...我只需要花更多时间使用 Watches 窗格。 app.CommandBars("Reviewing") 返回正确的命令栏,我只是为每个循环通过其控件获取“插入评论”控件,然后设置 .Enabled = False
-
很高兴听到这个消息。考虑把它放在这个问题的答案中。
标签: .net vsto ms-office add-in office-interop