Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

XmlElement::CloneNode Method (Boolean)

 

Creates a duplicate of this node.

Namespace:   System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public:
virtual XmlNode^ CloneNode(
	bool deep
) override

Parameters

deep
Type: System::Boolean

true to recursively clone the subtree under the specified node; false to clone only the node itself (and its attributes if the node is an XmlElement).

Return Value

Type: System.Xml::XmlNode^

The cloned node.

This method serves as a copy constructor for nodes. The duplicate node has no parent (ParentNode returns null).

The following example creates a new element, clones it, and then adds both elements into an XML document.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew XmlDocument;
   doc->Load( "2books.xml" );

   // Create a new element.
   XmlElement^ elem = doc->CreateElement( "misc" );
   elem->InnerText = "hardcover";
   elem->SetAttribute( "publisher", "WorldWide Publishing" );

   // Clone the element so we can add one to each of the book nodes.
   XmlNode^ elem2 = elem->CloneNode( true );

   // Add the new elements.
   doc->DocumentElement->FirstChild->AppendChild( elem );
   doc->DocumentElement->LastChild->AppendChild( elem2 );
   Console::WriteLine( "Display the modified XML..." );
   doc->Save( Console::Out );
}

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Return to top
Show:
© 2017 Microsoft