5

我认为以下方法会起作用:

var bod = wordDoc.MainDocumentPart.Document.Body;

foreach (var bookmark in bod.Descendants<BookmarkStart>())
{
    bookmark.Remove();
}

foreach (var bookmark in bod.Descendants<BookmarkEnd>())
{
    bookmark.Remove();
}

但这会破坏文件。

4

3 回答 3

6

试试这个,它适用于我的文档。

var bs = wordDoc.MainDocumentPart.Document
             .Descendants<BookmarkStart>()
             .ToList();
        foreach (var s in bs)
            s.Remove();

var be = wordDoc.MainDocumentPart.Document
             .Descendants<BookmarkEnd>()
             .ToList();
        foreach (var e in be)
            e.Remove();
于 2014-03-06T19:06:45.787 回答
0

尝试添加

书签.RemoveAllChildren();

书签.删除()

于 2013-07-17T15:31:08.347 回答
0

简单的解决方案:

wordDoc.MainDocumentPart.Document.RemoveAllChildren<BookmarkStart>();
wordDoc.MainDocumentPart.Document.RemoveAllChildren<BookmarkEnd>();
于 2015-08-26T14:14:01.120 回答