我正在使用Outlook加载项,它将从共享邮箱中提取预定义类别的列表。然后,用户将共享邮箱中的每封电子邮件分配给这些类别。
我的问题是我可以使用
访问链接到帐户的所有类别Outlook.Application application = new Outlook.Application();
Outlook.Categories categories = application.Session.Categories;
但找不到找到链接到共享邮箱的类别的方法。
是否可以获取共享邮箱类别? 如果没有,我将如何处理这种情况,因此以后我可以基于这些类别创建视图。
谢谢。
答案 0 :(得分:1)
类别存储在商店的Calendar文件夹中的消息类为“ IPM.Configuration.CategoryList”的隐藏消息中。如果您转到共享的Calendar文件夹并单击IMAPIFolder按钮,然后转到“相关内容”标签,则可以在OutlookSpy中看到它。
可以使用Outlook对象模型中的MAPIFolder.GetStorage
访问该隐藏消息。
您还可以使用Redemption集合访问RDOCategories(我是作者)中的Categories集合。兑换会同时在会话级别(默认存储中的RDOSession。Categories
和商店级别(RDOStore2。Categories
)中显示类别。可以使用RDOSession.GetSharedMailbox
打开共享邮箱。
答案 1 :(得分:0)
以下是获取所选文件夹类别的代码。
public void LoadCategories()
{
CategoriesCombo.Items.Clear();
Outlook.Application application = new Outlook.Application();
Outlook.NameSpace ns = application.GetNamespace("MAPI");
Outlook.MAPIFolder selectedFolder = application.ActiveExplorer().CurrentFolder;
if (selectedFolder is Outlook.MAPIFolder)
{
Outlook.Folder folder = selectedFolder as Outlook.Folder;
Outlook.Store store = folder.Store;
Outlook.Categories categories = store.Categories;
}
}
如果有人有更好的答案,我希望看到它。