2016-08-18 88 views
0

我正在创建Outlook加载项,该按钮在按下按钮后向邮件添加页脚。VSTO Word Editor未看到mailItem书签

我在mailItem.HtmlBody(它包含'和'标签)中显示的书签'_MailAutoSig'和'_MailOriginal'存在问题,但是当我在WordEditor中打开邮件时,它们根本没有书签。

我用以下棚阅读电子邮件的内容:

private void logHtml_Click(object sender, RibbonControlEventArgs e) 
{ 
    ILog log = LogManager.GetLogger("mailItem"); 
    log.Info(GetMailItem(e).HTMLBody); 
} 

private void logWord_Click(object sender, RibbonControlEventArgs e) 
{ 
    ILog log = LogManager.GetLogger("WordDoc"); 
    Outlook.MailItem mailItem = null; 

    mailItem = GetMailItem(e); 

    if (mailItem != null) 
    { 
     Word.Document doc = mailItem.GetInspector.WordEditor as Word.Document; 

     Word.Bookmarks bookmarks = doc.Content.Bookmarks; 
     foreach (var bookmark in bookmarks) 
     { 
      log.Debug(bookmark.ToString()); 
     } 
     log.Debug(doc.Bookmarks); 
     log.Debug(doc.Content.Text); 
    } 
} 

你能告诉我,如果我做错了什么,或者我应该做书签Word.Document加载的MailItem什么?

回答

0

我设法发现,在Outlook的书签窗口中有显示隐藏选项,需要检查MailOriginal和MailAutoSig书签。

同样在加载项中,我需要在获取书签列表之前添加doc.Bookmarks.ShowHidden = true;以查看这两个隐藏的书签。

添加该行后,所有显示正常。