在书签处获取文字

时间:2018-04-12 20:14:35

标签: c# ms-word com

我使用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());

有没有办法让书签上的文字与其名称完全相符?

1 个答案:

答案 0 :(得分:2)

您可以解决书签的Range.Text属性:

string bookmarkContent = bookmark.Range.Text;

请注意,这假设书签包含。如果您正在查看书签非打印字符,则书签可以看起来像这样(方括号环绕内容)或者我喜欢这个(Ibeam标记字符之间的位置)。只有方括号类型的书签才会返回有意义的 Range.Text; Ibeam类型将返回零长度字符串。