我有一个Outlook加载项,它是一个新的功能区选项卡,它连接到我的服务器数据库,以便与Outlook对象关联一些自定义数据.
我正在扩展它以显示在任务和日历项目(约会,会议等)中.
目前我确定创建的新项目的方式如下 – >
Microsoft.Office.Interop.outlook.application interopApplication = ThisAddIn.Application.Application if (interopApplication.ActiveExplorer().CurrentFolder.DefaultItemType.ToString() != "olTaskItem") { .... }
通过这种方式,我可以确定文件夹及其关联的新项目(例如在收件箱中,我创建新邮件项目,在日历中我创建新的约会等)
现在,当我在InBox中,并且单击New Appointment时,它会将新项目标识为olMailItem,而不是olAppointmentItem.当我在日历视图中并单击新邮件项时,情况也是如此.
我的问题是如何确定创建的新项目,无论我在哪个文件夹中?
解决方法
您应该检查
ActiveInspector
方法的
MessageClass
以确定OlItemType.
string itemClass = Globals.ThisAddIn.Application.ActiveInspector().CurrentItem.MessageClass; if (itemClass == "IPM.Appointment") // you have a calendar item else if (itemClass == "IPM.Task") // you have a task item else if (itemClass == "IPM.Note") // you have a message item