Outlook VSTO中的自定义功能区;缺少';如果不在VSTO项目中';s的根
本文关键字:VSTO 的根 如果不 项目 缺少 自定义 功能区 Outlook | 更新日期: 2023-09-27 17:58:17
我有一个基本的VSTO Outlook外接程序。我通过这篇文章添加了一个空的Ribbon,它很有效。
Ribbon.cs
和Ribbon.xml
文件当前位于我的项目根目录中,但如果我将它们移动到子文件夹(如AddIn'Ribbon
),则不会出现编译错误,但当我运行Outlook时,加载项的功能区会丢失。摆弄它,Ribbon.xml似乎必须留在我项目的根目录中才能显示Ribbon。
我不理解这种行为;是否有手动引用加载项功能区位置的设置或其他内容?
谢谢!
我重新审视后发现:添加新的Ribbon(XML)项后,生成了一个函数GetCustomUI
,它使用XML文件的路径作为程序集资源中该文件的查找键。
因此,在移动文件时,应该将调用从以下内容更改为GetResourceText
:
return GetResourceText("MyAddin.Ribbon.xml");
类似的东西:
return GetResourceText("MyAddin.Ribbons.Ribbon.xml");
您需要这样做,因为xml文件被链接为项目文件中的资源,项目文件应该有这样一行:
<EmbeddedResource Include="Ribbons'Ribbon.xml" />