【发布时间】:2015-11-04 07:21:13
【问题描述】:
点击此链接 - change outlook MailItem icon
我设法更改了收件箱图标。
这是我一步一步做的。 1) 为来自 Internet 的新邮件创建自定义消息类 类是 IPM.Note.Internet
Outlook.NameSpace outlookNameSpace;
Outlook.MAPIFolder inbox;
Outlook.Items items;
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
outlookNameSpace = this.Application.GetNamespace("MAPI");
inbox = outlookNameSpace.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
items = inbox.Items;
items.ItemAdd += new Outlook.ItemsEvents_ItemAddEventHandler(items_ItemAdd);
}
void items_ItemAdd(object Item)
{
Outlook.MailItem mailitem = (Outlook.MailItem)Item;
String EmailHeader = mailitem.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x007D001E");
if (Item != null && EmailHeader.Contains("Look for a string in the headers here that we set for incomming mail") == true)
{
if (mailitem.MessageClass == "IPM.Note")
{
mailitem.MessageClass = "IPM.Note.Internet";
mailitem.Save();
}
}
}
2) 创建了一个与 MessageClass 匹配的替换 Outlook 表单区域。在这种情况下,我使用了 IPM.Note.Internet
4) 已调试的项目和来自 Internet 的下一条消息在消息类更新后被我的自定义图标标记。
我现在的问题是我无法预览或打开我更改了邮件类别的邮件。类似于这篇没有回复的帖子 - Change Inbox-icons in Outlook at runtime
我认为问题在于我的替换 Outlook 表单区域是空白的,因此无法预览邮件。
如果这是真的,那么这就是我的问题。将标准 IPM.Note 消息类模板导出到 Visual Studio 的最佳方法是什么。我需要覆盖我的 IPM.Note.Internet Outlook 表单区域设计。
导入“.OFS”文件。我试图弄清楚如何从 Outlook 2010 客户端(开发人员工具)导出文件,但我找不到将模板保存为该特定格式的方法。我可以保存到 OFT(办公模板)但不能保存到 .OFS
提前感谢您的帮助!
【问题讨论】:
-
预览窗格到底显示了什么?
-
没什么,只是空白。如果我将消息类重命名为一条消息,从 IPM.Note.Internet 回到 IPM.Note,我可以预览消息
标签: c# visual-studio-2010 outlook-addin