如何将组添加到多个内置function区选项卡(vsto)?

这是VS2010 + Office 2010加载项。 我想要的只是向多个内置选项卡添加一个按钮( 或按钮组 )。 例如,我的按钮应该在New Mail Message RibbonNew Appointment Ribbon中都可用。 我尝试添加一个新选项卡( 在可视设计器中 ),但似乎不起作用。 按钮组显示在“新邮件”选项卡上,但不显示在“约会”选项卡上。 顺便说一句,我使用以下ID: TabNewMailMessageTabAppointment

对于任何其他人都在谈论这个问题,我能够在Appointment和New Mail Message选项卡上看到我的组的唯一方法是为每个内置选项卡添加一个function区,然后复制/粘贴所有UI和代码从一个function区到另一个function区。 确保为每个内置选项卡选择适当的RibbonType(function区的属性)。

与上面的答案类似但不使用XML,您可以在两个不同的位置添加第二个选项卡。

在function区设计器中,向function区添加第二个选项卡,并将ControlID更改为您希望查看组的第二个位置。 然后右键单击原始选项卡中的组,然后单击“复制”。 单击返回新选项卡并将组粘贴到那里。 它将复制组中已有的任何内容。 但是,您必须重新添加事件。但对我来说,我只是重新使用已经创建的事件,它完美地运行。 干杯。

我没有Outlook,但我在Word / Excel / PPT中使用了以下内容,所以我希望它也适用于Outlook(未经测试!)。

尝试添加function区(XML)项,然后使用看起来相同的按钮添加两个选项卡,并使用不同的ID调用相同的代码。

XML:

           

C#:

  public void ButtonOnAction(IRibbonControl control) { switch (control.Id) { case "myButton1": case "myButton2": // do something Console.Out.WriteLine("Button ID: {0}", control.Id); break; } }