我使用Microsoft.Interop.Word为我的应用程序从表单中获取数据。文中有书签。这就是我得到它们的方式:
var orderedBoomarks = WordDocument.Bookmarks.Cast<Bookmark>().OrderBy(d => d.Start).ToList();
foreach (Bookmark bookmark in orderedBoomarks)
dataTable.Rows.Add(bookmark.Name.ToString());
有没有办法让书签上的文字与其名称完全相符?
答案 0 :(得分:2)
您可以解决书签的Range.Text
属性:
string bookmarkContent = bookmark.Range.Text;
请注意,这假设书签包含。如果您正在查看书签非打印字符,则书签可以看起来像这样(方括号环绕内容)或者我喜欢这个(Ibeam标记字符之间的位置)。只有方括号类型的书签才会返回有意义的 Range.Text
; Ibeam类型将返回零长度字符串。