Outlook VSTO添加 - 如何在多个窗口打开时确定项目类型

时间:2016-06-10 08:10:37

标签: outlook vsto office-interop outlook-addin office-addins

我开发了一个Outlook Add in,它在电子邮件主题,会议请求等的开头添加了一个字符串。

程序检测到用户首次打开时屏幕上显示的“CurrentItem”。

例如,当用户开始回复电子邮件时会出现问题,该电子邮件告诉程序当前项目是回复。然后,用户在发送回复之前开始新的电子邮件,将当前项目设置为mailItem。然后,当他们返回之前开始的回复时,程序仍然认为它是mailItem,因此它会破坏应用程序。

如何解决此问题?任何帮助都将受到大力赞赏。

以下是用户首次创建回复时遇到的代码。

private void ThisAddIn_InlineResponse(object Item)
    {
        if (Item != null)
        {
            Outlook.MailItem mailItem = Item as Outlook.MailItem;
        }
        TypeCheck = "inline";
    }

基本上,我需要在它是内联回复的情况下点击此代码,但我似乎无法在窗口初始化之外执行此操作。

1 个答案:

答案 0 :(得分:0)

使用Application.ItemSend事件处理实际发送的项目。使用Class属性(您可以动态访问它,所有OM对象公开它)来确定项目类型(例如OlObjectClass.olMail的43)。