开发者

How to access the subject of a compose mail item in Outlook

In Outlook, I can set the subject for a new message (when composing a new mail message), but I want to prepend text. So I need to get the subject first, and then set it.

Outlook.Application application = Globals.ThisAddIn.Application;
Outlook.Inspector inspector = application.ActiveInspector();
Outlook.MailItem myMailItem = (Outlook.MailItem)inspector.CurrentItem;

if (myMailItem != null && !string.IsNullOrEmpty(myMailItem.Subject))
{
    myMailItem.Subject = "Following up on your开发者_C百科 order";
}

This code works on replies, but not for new messages, because in that case, myMailItem is null.


This is what I was looking for:

if (thisMailItem != null)
{
    thisMailItem.Save();

    if (thisMailItem.EntryID != null)
    {
        thisMailItem.Subject = "prepended text: " + thisMailItem.Subject;
        thisMailItem.Send();
    }
}

The subject was null until the mail item had been saved, either because it was sent, or as a draft. We can save it programmatically and then get the subject.

One other note: if the subject is blank at the time of saving, it will still show as null.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜