C# Word 开发:在 ContentControl 的 Range 中插入节点
作为 C# Word 开发工程师,我会使用以下两种方式解决 contentcontrol 中的 Range 没有 InsertNode 方法的问题:
- 使用 Open XML SDK Open XML SDK 是一个开源的 .NET 库,可以用于操作 Word 文档。使用 Open XML SDK,我们可以通过以下步骤实现在 contentcontrol 中插入节点:
- 获取 contentcontrol 的 Range 对象
- 创建一个新的节点
- 将新节点插入到 contentcontrol 的 Range 对象中
以下是示例代码:
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Wordprocessing;
// 获取 contentcontrol 的 Range 对象
ContentControl cc = ...;
var ccRange = cc.Range;
// 创建一个新的节点
Run newRun = new Run(new Text('New Node Text'));
// 将新节点插入到 contentcontrol 的 Range 对象中
ccRange.InsertAfter(newRun);
- 使用第三方库 除了 Open XML SDK,还有一些第三方库可以用于操作 Word 文档,比如 Aspose.Words 和 Spire.Doc。这些库提供了更简单易用的 API,可以帮助我们快速实现在 contentcontrol 中插入节点的功能。以下是使用 Aspose.Words 的示例代码:
using Aspose.Words;
// 获取 contentcontrol 的 Range 对象
ContentControl cc = ...;
var ccRange = cc.Range;
// 创建一个新的节点
DocumentBuilder builder = new DocumentBuilder();
builder.Writeln('New Node Text');
Node newNode = builder.CurrentParagraph;
// 将新节点插入到 contentcontrol 的 Range 对象中
ccRange.InsertNode(newNode);
原文地址: https://www.cveoy.top/t/topic/nuGT 著作权归作者所有。请勿转载和采集!