Clone
Node.Clone method
创建节点的副本。
public Node Clone(bool isCloneChildren)
范围 | 类型 | 描述 |
---|---|---|
isCloneChildren | Boolean | True 则递归克隆指定节点下的子树; false 仅克隆节点本身。 |
返回值
克隆的节点。
评论
此方法充当节点的复制构造函数。 克隆的节点没有父节点,但与原始节点属于同一文档。
此方法始终执行节点的深层复制。这isCloneChildrenparameter 指定是否也复制所有子节点。
例子
演示如何克隆复合节点。
Document doc = new Document();
Paragraph para = doc.FirstSection.Body.FirstParagraph;
para.AppendChild(new Run(doc, "Hello world!"));
// 下面是克隆复合节点的两种方法。
// 1 - 创建节点的克隆,并创建其每个子节点的克隆。
Node cloneWithChildren = para.Clone(true);
Assert.IsTrue(((CompositeNode)cloneWithChildren).HasChildNodes);
Assert.AreEqual("Hello world!", cloneWithChildren.GetText().Trim());
// 2 - 创建一个节点的克隆,不带任何子节点。
Node cloneWithoutChildren = para.Clone(false);
Assert.IsFalse(((CompositeNode)cloneWithoutChildren).HasChildNodes);
Assert.AreEqual(string.Empty, cloneWithoutChildren.GetText().Trim());
也可以看看
- class Node
- 命名空间 Aspose.Words
- 部件 Aspose.Words