VSTO自定义outlook文件夹上下文菜单
本文关键字:上下文 菜单 文件夹 outlook 自定义 VSTO | 更新日期: 2023-09-27 18:17:44
我基本上希望这样做:c# (outlook插件)文件夹上下文菜单
但问题是它永远不会触发FolderContextMenuDisplay事件。看看文档,它似乎被弃用了,但是有人知道我应该用什么来代替吗?
谢谢!
通过使用Ribbon XML,您可以设置上下文菜单的可见性。
在这篇文章中,我将向您展示如何使用Ribbon XML在上下文菜单中显示和隐藏项目。当用户右键单击Outlook文件夹时,将出现上下文菜单。首先,将Ribbon XML项添加到Outlook项目中。
然后将以下代码添加到您的ThisAddIn类中。这个例子假设你的功能区名为Ribbon1,并且使用c#:
protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject()
{
return new Ribbon1();
}
接下来,用以下内容替换Ribbon1.xml文件的内容:
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
<contextMenus>
<contextMenu idMso="ContextMenuFolder">
<button idMso="FolderPropertiesContext" getVisible="IsVisible" />
</contextMenu>
</contextMenus>
</customUI>
但等待。还有更多!在Ribbon1.cs文件中创建这个方法。
public bool IsVisible(Office.IRibbonControl control)
{
string name = ((Outlook.Folder)control.Context).Name;
if (foldername == "Inbox")
{
return false;
}
return true;
}
当用户右键单击文件夹时,我们通过返回false告诉Outlook不显示该命令。否则,我们告诉Outlook通过返回true让命令可见。