我已经按照本教程在撰写新消息时创建了自定义任务窗格: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?
当您创建 CTP 时,您将使用特定的
Inspector
对象。您可以将该Inspector
存储为您的CTP类的成员。