【发布时间】:2019-07-24 14:24:12
【问题描述】:
在 C# 中使用 Outlook 寻找有关 VSTO 功能区的一些建议或方向。
到目前为止,我已经构建了一个 Outlook 2010 功能区(使用 TabMail),该功能区打开一个 WinForms 窗口,允许我的用户通过 DataGridView 从 SQL 数据库中的自定义构建通讯簿中选择联系人。
用户基本上从 datagridview 中选择他们想要发送电子邮件的人,然后将其添加到 toLine 列表中。
Application app = new Microsoft.Office.Interop.Outlook.Application();
Mail item item = app.CreateItem((OlItemType.olMailItem));
item.To = toLine;
Item.Display();
This.close();
使用这种方法的缺点是用户必须在实际撰写电子邮件之前建立他们的收件人列表。
我现在正在尝试使用 TabMailNewMessage。这应该允许用户撰写他们的电子邮件,然后单击新邮件中的功能区图标并从那里添加到他们的收件人列表中。
我的图标在 TabMailNewMessage 中显示正常,我可以用它来打开 2nd Win Form [目前作为测试]。
我有点不确定如何将已打开的现有邮件项添加到收件人列表中。
目前我在 2nd Win Form 上只有一个按钮,谁能解释我如何单击该按钮并简单地将某人添加到 [这封已撰写的电子邮件] 的收件人列表中。 (我在按钮点击后没有任何代码,因为我不知道该怎么做)
我还需要确保它不发送电子邮件,而只是将用户添加到收件人列表中。
目前使用 Office 2010 和 VS 2013(使用 C#)。
希望我在这里有点意思。
谢谢
编辑: 不确定它是否简单
Application app = Globals.ThisAddIn.Application;
MailItem mi = (Outlook.MailItem)app.ActiveInspector().CurrentItem;
Mi.Recipients.Add(“joe@email.com”);
This.Close();
【问题讨论】: