Outlook VSTO 如何让自定义任务窗格与多个打开的撰写窗口一起工作?

问题描述 投票:0回答:1

我已经按照本教程在撰写新消息时创建了自定义任务窗格:https://learn.microsoft.com/en-us/visualstudio/vsto/walkthrough-displaying-custom-task-panes-with-电子邮件消息在 outlook?view=vs-2022&tabs=csharp

到目前为止,它运行良好。我在任务窗格上按下一个按钮,它会填写消息的密件抄送字段。

很可能如果有人打开了多个撰写窗口,那么密件抄送只会添加到最近打开的窗口中。如果我按下之前打开的撰写窗口上的按钮,则什么也不会发生。

我在做这个:

Globals.ThisAddIn.CurrentMailItem.BCC = "[email protected]";

但是当切换回第一个撰写窗口时,CurrentMailItem 不再正确。

我试过这个:

foreach (Inspector inspector in Globals.ThisAddIn.inspectors)
{
    if (inspector.CurrentItem is MailItem)
    {
        MailItem mailItem = inspector.CurrentItem as MailItem;
        mailItem.BCC = "test";
    }
}

它能够将 BCC 添加到两个撰写窗口,但这不是我想要的。 如何将密件抄送添加到单击任务窗格的当前 mailItem?

c# outlook vsto
1个回答
0
投票

当您创建 CTP 时,您将使用特定的

Inspector
对象。您可以将该
Inspector
存储为您的CTP类的成员。

© www.soinside.com 2019 - 2024. All rights reserved.