我有一个自定义的Outlook 2010功能区选项卡,其类型为Microsoft.Outlook.Appointment。
在该选项卡中,我有几个按钮可以更改当前约会项目,并调用其Save
方法。但是,该方法始终将焦点更改为检查器的第一个选项卡。我希望焦点保留在我的自定义标签上。
这是我目前的代码:
private void ButtonSaveAppointment(object sender, RibbonControlEventArgs e)
{
Outlook.Inspector inspector = (Outlook.Inspector)this.Context;
Outlook.AppointmentItem appointment = (Outlook.AppointmentItem)inspector.CurrentItem;
appointment.Save();
this.RibbonUI.ActivateTab(this.Tabs[0].ControlId.ToString());
}
这对我不起作用。谁能告诉我我做错了什么? 谢谢。
答案 0 :(得分:1)
答案 1 :(得分:0)
这是我在加载事件中使用的内容:
ThisRibbonCollection ribbonCollection = Globals.Ribbons[_inspector];
ribbonCollection.RibbonSMS.RibbonUI.ActivateTab("the_name_of_the_ribbon_tab");
这与我在你的代码中看到的相对应:
this.RibbonUI.ActivateTab(this.Tabs[0].ControlId.ToString());
该代码在load事件中触发良好,但我测试了它,当你从函数调用它时它不起作用。请尝试将其移动到加载事件,您将看到代码有效。我的猜测是它从方法中无法正常工作,只是形成了加载事件。
祝你好运