Clone

Node.Clone method

Erstellt ein Duplikat des Knotens.

public Node Clone(bool isCloneChildren)
ParameterTypBeschreibung
isCloneChildrenBooleanTrue, um den Teilbaum rekursiv unter dem angegebenen Knoten zu klonen; false, um nur den Knoten selbst zu klonen.

Rückgabewert

Der geklonte Knoten.

Bemerkungen

Diese Methode dient als Kopierkonstruktor für Knoten. Der geklonte Knoten hat keinen übergeordneten Knoten, gehört aber zum selben Dokument wie der ursprüngliche Knoten.

Diese Methode führt immer eine tiefe Kopie des Knotens durch. DerisCloneChildren parameter gibt an, ob auch alle untergeordneten Knoten kopiert werden sollen.

Beispiele

Zeigt, wie ein zusammengesetzter Knoten geklont wird.

Document doc = new Document();
Paragraph para = doc.FirstSection.Body.FirstParagraph;
para.AppendChild(new Run(doc, "Hello world!"));

// Nachfolgend finden Sie zwei Möglichkeiten zum Klonen eines zusammengesetzten Knotens.
// 1 – Erstellen Sie einen Klon eines Knotens und erstellen Sie auch einen Klon jedes seiner untergeordneten Knoten.
Node cloneWithChildren = para.Clone(true);

Assert.IsTrue(((CompositeNode)cloneWithChildren).HasChildNodes);
Assert.AreEqual("Hello world!", cloneWithChildren.GetText().Trim());

// 2 – Erstellen Sie einen Klon eines einzelnen Knotens ohne untergeordnete Elemente.
Node cloneWithoutChildren = para.Clone(false);

Assert.IsFalse(((CompositeNode)cloneWithoutChildren).HasChildNodes);
Assert.AreEqual(string.Empty, cloneWithoutChildren.GetText().Trim());

Siehe auch