2016-08-18 10 views
0

Я создаю надстройку Outlook, которая добавляет нижний колонтитул к почте после нажатия кнопки.VSTO Word Editor не видит закладки mailItem

У меня проблема с закладками «_MailAutoSig» и «_MailOriginal», которые отображаются в mailItem.HtmlBody (он содержит теги «и»), но пока я открываю почту в WordEditor, это вовсе не закладки.

я использую следующую Cote читать содержание электронной почты:

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); 
    } 
} 

могли бы вы сказать мне, если я делаю что-то неправильно или что я должен сделать, чтобы загрузить MailItem с закладками в Word.Document?

ответ

0

Мне удалось найти, что в окне Outlook Bookmarks есть скрытая опция show, которую необходимо проверить, чтобы увидеть закладки MailOriginal и MailAutoSig.

Аналогично в надстройке мне нужно было добавить doc.Bookmarks.ShowHidden = true;, прежде чем получать список закладок, чтобы увидеть эти 2 скрытые закладки.

После добавления этой строки все отображается правильно.