我正在开发一个ASP C#项目,该项目必须隐藏包含大量表格的书签Word文档的各个部分。我们的第一种方法是删除每个标记的父元素,它可以工作,但需要标记其中没有数据的行,并在最终文档中保留前一个空格(如果页面有两个部分,则删除上面的那个,你得到半个空格和下面的部分。)
所以我们现在正在尝试为每个文档部分添加一个书签并完全删除它。到目前为止,我们尝试实现这一目标(取自How to delete all contents inside a word document bookmark using C# and Open XML)是
BookmarkStart myBookMarkStart = OpenWordDocument.MainDocumentPart.Document.Body.Descendants<BookmarkStart>().FirstOrDefault(x => x.Name == myBookMarkName);
OpenXmlElement sibling = myBookMarkStart.NextSibling();
while (!(sibling is BookmarkEnd))
{
var temp = sibling;
sibling = sibling.NextSibling();
temp.Remove();
}
但是,这并不会删除书签开头及其结尾内的任何内容。