2014-01-05 2 views
1

Может ли кто-нибудь сказать мне, как реально все закладки в документе Word 2010, используя openXml 2.0. Я использовал Microsoft.Office.Interop.Word, чтобы читать закладки, но я не могу развернуть свой сайт, поскольку у него возникли проблемы, поэтому я переключился на openxml. Кто-нибудь скажет мне, как читать все закладки.Чтение закладок Word

+0

Я редактировал свой титул. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

+0

хорошо спасибо .. –

ответ

1

вы можете проходить через все

file.MainDocumentPart.RootElement.Descendants<BookmarkStart>()

, как:

IDictionary<String, BookmarkStart> bookmarkMap = 
    new Dictionary<String, BookmarkStart>(); 

// get all 
foreach (BookmarkStart bookmarkStart in file.MainDocumentPart.RootElement.Descendants<BookmarkStart>()) 
{ 
    bookmarkMap[bookmarkStart.Name] = bookmarkStart; 
} 

// get their text 
foreach (BookmarkStart bookmarkStart in bookmarkMap.Values) 
{ 
    Run bookmarkText = bookmarkStart.NextSibling<Run>(); 
    if (bookmarkText != null) 
    { 
     string bookmarkText = bookmarkText.GetFirstChild<Text>().Text; 
    } 
} 

код извлекается из https://stackoverflow.com/a/3318381/28004

+0

Используя это решение, мы не можем найти закладки, представленные в верхнем и нижнем колонтитулах. – MaheshMajeti

+0

так вы решили эту проблему? – lordkain

Смежные вопросы