如何在一个 Outlook VSTO 插件中使用多个 XML 功能区

How to use multiple XML ribbon in one Outlook VSTO Add in

我正在使用 Outlook VSTO 加载项,首先我向 TabMail 添加了一个按钮(功能区),之后我需要一个自定义上下文菜单项,右键单击任何收件箱项,所以我添加了另一个功能区, 但在 CreateRibbonExtensibilityObject() 里面我只能 return 一条丝带。

里面ThisAddIn.cs

protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject()
{
    return new Ribbon2();
}

我尝试了一些旧的不清楚的解决方案,例如下面添加命名空间,但它不起作用,也许它们用于合并两个选项卡和组,而不是用于两个不同类型的功能区。

上下文菜单功能区

<?xml version="1.0" encoding="UTF-8"?>
 <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" 
  onLoad="Ribbon_Load" xmlns:x="MySpace.Outlook"> 
   <contextMenus>
    <contextMenu idMso="ContextMenuMailItem">
      <button
       id="MyContextMenuMailItem" label="ContextMenuMailItem" 
       idQ="MyRibbons"/>
   </contextMenu>
  </contextMenus> 
</customUI> 

如何在同一个加载项中使用两个功能区?

您必须提供一个 XML 字符串,其中指定了两个元素。