获取书签范围

时间:2018-01-18 09:54:21

标签: c# ms-word bookmarks

如何获取word文档中每个书签的范围值?我希望它们显示在datagrid中,所以代码是:

int ii = 0;
Object obj;
var orderedBoomarks = WordDocument.Bookmarks.Cast<Bookmark>().OrderBy(d => d.Start).ToList();
foreach(Bookmark bookmark in orderedBoomarks)
{                    
    obj = bookmark.Range;
    dataGridView1.Rows.Add(bookmark.Name.ToString());
    dataGridView1.Rows[ii].Cells[1].Value = obj.ToString();
    ii++;
}

现在,单元格中的结果是“System .__ ComObject”。那么,我甚至可以得到书签范围的数值吗?

2 个答案:

答案 0 :(得分:0)

如果我理解你的问题,你想得到Range的值,所以在这种情况下你可以使用:

string bm = bookmark.Range.Text;

答案 1 :(得分:0)

谢谢,我想通了:

bm_numb =  bookmark.Range.Start;