我的情况类似于这个,但那里的答案都不适合我。
在一个没有代码的全新项目中,我有一个非常简单的功能区按钮:
...但是Outlook(最新版本,M365)将不再显示它。我说“不再”是因为一开始确实如此。然后我通过自定义功能区手动删除它并从右侧列表中删除自定义组:
然而,显然,我应该通过
File\Options\Add-ins
对话框删除它,因为它现在根本不会显示,无论我做什么。奇怪的是,当我 F5 使用 Visual Studio (2022) 运行该项目时,库存Add-ins\Get Add-ins
组合会轻微闪烁。
更常见的解决方案不起作用。网络搜索可以找到所有问题的答案,但这个问题除外。 ChatGPT 擅离职守,大概是在试图抓住 Rosie the Robot。
如何让我的按钮(和群组)再次出现?
--编辑--
从那以后,我发现功能区至少会在我开始一封新电子邮件时尝试加载(但只是在我重新启动 Outlook 后的第一次)。
在高级选项中打开
Show VSTO Add-in user interface errors
后,我得到这个:
我尝试将设计器中的选项卡重命名为
TabMail
,但这并没有带来任何改进。
这是
RibbonTab
的属性:
...这是我选择的
RibbonTypes
:
出于纯粹的好奇心,我打开了
StartFromScratch
属性,并且我的按钮does在该配置下显示无误:
我也可以开始一个新的电子邮件(使用
Ctrl+N
)没有以前的错误消息。
这是我的功能区导出的XML:
<?xml version="1.0" encoding="UTF-8"?>
<customUI onLoad="Ribbon_Load" xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<tabs>
<tab idMso="TabAddIns">
<group id="Group1" label="Group1">
<button id="Button1" label="Click Me" showImage="false" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
我没有看到文档中指示的
Ribbon Callback
区域。此外,在连接Override
之后,当我使用 XML ribbon 与 ribbon designer 时,整体情况没有任何改善。
我的 Outlook 设置是否以某种方式损坏?确实有这种感觉。
首先,尝试注销然后通过运行加载项项目的
Clean
命令重新注册加载项,然后Build
重新注册它。
默认情况下,如果 VSTO 加载项尝试操作 Microsoft Office 用户界面 (UI) 但失败,则不会显示任何错误消息。但是,您可以将 Microsoft Office 应用程序配置为显示与 UI 相关的错误消息。您可以使用这些消息来帮助确定自定义功能区未出现的原因,或者显示功能区但未显示控件的原因。对于 Outlook,
Show VSTO Add-in user interface errors
复选框位于详细信息窗格的 Developer
部分。
有两种使用 VSTO 创建自定义功能区 UI 的方法:
其次,如果您使用功能区设计器,则需要检查功能区上的
Add-ins
选项卡是否可见。因此,您可以尝试将控件放置到自定义选项卡中。只需单击设计器界面上功能区选项卡的右侧即可添加自定义选项卡。您也可以尝试更改功能区控件 ID。
最后的办法是将自定义功能区 UI 导出到功能区 XML 并使用回调对 UI 进行故障排除。有关详细信息,请参阅如何:将功能区从功能区设计器导出到功能区 XML。