如何在一个Outlook VSTO外接程序中使用多个XML功能区

时间:2019-02-12 13:40:52

标签: c# vsto outlook-addin

我正在使用Outlook VSTO Add In,首先我在TabMail中添加了一个Button(功能区),然后我需要在右键单击任何Inbox项目时使用自定义上下文菜单项,因此我添加了另一个Ribbon,但是在CreateRibbonExtensibilityObject()内部,我只能返回一个功能区。

在ThisAddIn.cs内部

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

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

ContextMenuRibbon

<?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> 

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

1 个答案:

答案 0 :(得分:2)

您必须提供一个包含两个指定元素的XML字符串。