Outlook Addin - 如何在VSTO中使用C#发送的电子邮件中设置“高重要性”

时间:2013-05-14 12:41:14

标签: c# vsto outlook-addin

我想知道如何在点击复选框时设置电子邮件的标题。我在FormRegion中创建了必需的复选框。

实施例: 我有一个名为HighImportance的复选框,点击我想要更改电子邮件标题。 我试过这个,但它不起作用:

private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
    this.OutlookItem.Importance = 2;
}

3 个答案:

答案 0 :(得分:4)

将项目转换为MailItem,然后设置其重要性。

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
  Outlook.MailItem myMailItem = (Outlook.MailItem)this.OutlookItem;
  myMailItem.Importance = Outlook.OlImportance.olImportanceHigh
}

答案 1 :(得分:1)

您应该使用Outlook.MailItem。我猜你正在寻找的是Importance属性。

此处有关MailItem对象的更多信息:http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.mailitem_properties(v=office.14).aspx

此处列出了您可以设置重要性属性的值: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.olimportance(v=office.14).aspx

答案 2 :(得分:1)

您必须使用以下属性:

  

PR_IMPORTANCE   标识符

     

0x0017

     

数据类型:

     

PT_LONG   面积:

     

常规消息

接受的值:

  

IMPORTANCE_LOW

     

IMPORTANCE_HIGH

     

IMPORTANCE_NORMAL

http://msdn.microsoft.com/en-us/library/office/cc815346(v=office.12).aspx

这里有一段我​​以前做过的代码示例:

设置属性:

private string HighPrioritySchema="http://schemas.microsoft.com/mapi/proptag/0x0017";


//Being item an Oulook Item:

  item = (Microsoft.Office.Interop.Outlook.MailItem)folder.Items[i];   
  item.UserProperties.Add(HighPrioritySchema,
                             Outlook.OlUserPropertyType.olText, true,
                             Outlook.OlUserPropertyType.olText);
  item.UserProperties[HighPrioritySchema].Value = "IMPORTANCE_HIGH";    
  item.Save();  

<强> //To get the property that has been previously set:

 Outlook.PropertyAccessor pacc = item.PropertyAccessor;
 pacc.GetProperties(HighPrioritySchema);