如何以编程方式从 docx 中检索标记的条目

How to programmaticaly retrieve marked entry from docx

如何从 docx 文档中检索标记的条目(通过按 Alt+Shift+X 进行标记。Word 显示“标记索引条目”对话框)?我需要将其识别并替换为特定内容。 我在 ms word 中手动创建了标记的条目,但我需要以某种方式检索它。

我尝试过的:

var wordApp = new Application();
wordApp.Visible = true;
var docxDocument = wordApp.Documents.Open(filePath);                           
var indexes= docxDocument.Indexes; // empty collection

我发现更好的解决方案是使用书签。 更改书签内容示例:

var wordApp = new Application();
wordApp.Visible = true;
var docxDocument = wordApp.Documents.Open(filePath);

var bookmark = wordApp.ActiveDocument.Bookmarks["MyBookmark"];                     
Range range = bookmark.Range;
range.Text = "My new text\n";
object rng = range;
var newBookmark = wordApp.ActiveDocument.Bookmarks.Add("NewBookmark", ref rng);