【问题标题】:VSTO MailItem.Recipients retrieve email addresses in C#VSTO MailItem.Recipients 在 C# 中检索电子邮件地址
【发布时间】:2019-05-14 04:31:03
【问题描述】:

背景信息:我正在用 C# 为 Outlook 编写插件程序。当用户在 Outlook 中发送电子邮件时,我想获取收件人、抄送和密件抄送文本框中列出的电子邮件地址。作为测试,我正在尝试在新窗口中打印第一个收件人的电子邮件地址。

private void Application_ItemSend(object Item, ref bool Cancel)
{
    if (Item is Outlook.MailItem)
    {

            Outlook.MailItem mailItem = Item as Outlook.MailItem;

            Outlook.Recipients myRecipients = mailItem.Recipients;

            MessageBox.Show(myRecipients(0));
    }
}

Microsoft docs Recipients Interface 声明“使用 Recipients(index),其中 index 是名称或索引号,以返回单个 Recipient 对象。但是,myRecipients(0) 调用给了我一个错误,指出方法名称是预期的。

我相信我已经正确初始化了 Recipients 集合,因为我已经能够调用 myRecipients.Count 来返回草稿电子邮件中列出的正确收件人数量。

任何帮助将不胜感激,谢谢!

【问题讨论】:

    标签: c# email vsto mailitem


    【解决方案1】:

    通常可以通过在方括号内传递索引器来访问集合项(不是您问题代码中的圆括号)...在Outlook.Recipients 的情况下,我认为集合没有实现这一点模式,因此您需要使用像 myRecipients.Item(0) 这样的 Item 方法,其中 0 是您的索引。

    【讨论】:

      猜你喜欢
      • 2012-10-03
      • 2021-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多