当用户以 popin 模式回复时,VSTO Outlook 功能区不显示

VSTO Outlook Ribbon not showing when user replies in popin mode

我们构建了一个 VSTO Outlook 功能区来保存使用 Outlook 发送的新邮件。 RibbonType - Micorosft.Outlook.Mail.Compose

在用户以 popin 模式回复邮件消息之前,此方法运行良好。功能区未显示。

我该如何解决这个问题?

你的意思是内嵌响应?除了 Microsoft.Outlook.Mail.Compose,您还需要处理 Microsoft.Outlook.Explorer 和处理 TabComposeTools 选项卡:

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="OnLoadExplorerRibbon">
                <ribbon>
                  <contextualTabs>
                    <tabSet idMso="TabComposeTools">
                      <tab idMso="TabMessage">
                        <group ...

您似乎需要在资源管理器中为 Outlook 内联响应自定义上下文选项卡 windows。

不幸的是,VSTO 的功能区设计器没有为上下文选项卡提供任何内容。因此,您需要为此使用 Ribbon XML。有关详细信息,请参阅 Walkthrough: Creating a Custom Tab by Using Ribbon XML

请注意,您可以将现有 UI 导出到 XML 并继续使用功能区 XML。参见 How to: Export a Ribbon from the Ribbon Designer to Ribbon XML

以下文章解释了处理上下文选项卡的所有内容:

您可以在以下文档中找到内置控件 ID:

基本上,您需要在功能区标签内指定以下部分:

   <contextualTabs>
       <tabSet idMso="TabComposeTools">
            <tab idMso="TabMessage">
                <!-- your controls goes there -->
            </tab>
       </tabSet>
   </contextualTabs>

在以下系列文章中阅读有关 Fluent UI(又名功能区 UI)的更多信息: