以编程方式打开Outlook功能区控件

时间:2015-01-17 13:25:56

标签: vsto outlook-addin outlook-2010

我正在开发一个C#Office COM Addin,它有一个与Appointment消息类相关联的相邻表单区域。我试图通过代码打开功能区上的重复切换按钮。我已经尝试过Office.CommandBars接口和FindControl()来通过其控件ID引用控件。但它不起作用。任何帮助将不胜感激。提前谢谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用辅助功能API来模拟“重复发生”按钮上的单击。

您还可以尝试使用Redemption及其SafeInspector对象来执行此操作:

'simulate a click on the Recurrence button
set sInspector = CreateObject("Redemption.SafeInspector")
sInspector.Item = Application.ActiveInspector
set Ribbon =  sInspector.Ribbon
oldActiveTab = Ribbon.ActiveTab
Ribbon.ActiveTab = "Appointment"
set Control = Ribbon.Controls("Recurrence...")
Control.Execute
Ribbon.ActiveTab = oldActiveTab 'restore the active tab

答案 1 :(得分:0)

在这种情况下,无需使用辅助功能API或赎回。

Command bars类的ExecuteMso方法允许在功能区上执行内置控件。在功能区上显示“重复切换”按钮时,尝试使用以下代码:

commandBars.ExecuteMso("Recurrence");

命令栏对象应来自Explorer或Inspector对象,具体取决于目标控件的来源。有关更多IdMso值,请参阅Office 2013 Help Files: Office Fluent User Interface Control Identifiers