XmlNode.Clone XmlNode.Clone XmlNode.Clone XmlNode.Clone Method

定義

このノードの複製を作成します。Creates a duplicate of this node.

public:
 virtual System::Xml::XmlNode ^ Clone();
public virtual System.Xml.XmlNode Clone ();
abstract member Clone : unit -> System.Xml.XmlNode
override this.Clone : unit -> System.Xml.XmlNode
Public Overridable Function Clone () As XmlNode

戻り値

クローンとして作成されたノード。The cloned node.

次の例では、XML ドキュメントのルート ノードを複製します。The following example clones the root node of the XML document.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<book ISBN='1-861001-57-5'>"
   "<title>Pride And Prejudice</title>"
   "<price>19.95</price>"
   "</book>" );
   XmlNode^ root = doc->FirstChild;
   
   //Clone the root node.  The cloned node includes
   //child nodes. This is similar to calling CloneNode(true).
   XmlNode^ clone = root->Clone();
   Console::WriteLine( clone->OuterXml );
}

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "<price>19.95</price>" +
                "</book>");

    XmlNode root = doc.FirstChild;

    //Clone the root node.  The cloned node includes
    //child nodes. This is similar to calling CloneNode(true).
    XmlNode clone = root.Clone();
    Console.WriteLine(clone.OuterXml);
  }
}
Option Explicit
Option Strict

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample
    Public Shared Sub Main()
        
        Dim doc As New XmlDocument()
        doc.LoadXml("<book ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "<price>19.95</price>" & _
                    "</book>")
        
        Dim root As XmlNode = doc.FirstChild
        
        'Clone the root node.  The cloned node includes
        'child nodes. This is similar to calling CloneNode(true).
        Dim clone As XmlNode = root.Clone()
        Console.WriteLine(clone.OuterXml)
    End Sub 'Main
End Class 'Sample

注釈

複製をXmlElementすべての属性とを既定の属性を表す XML プロセッサによって生成されたものも含め、その値をコピーします。Cloning an XmlElement copies all attributes and their values, including those generated by the XML processor to represent defaulted attributes. このメソッドを再帰的に、ノードとその下にあるサブツリーのクローンを作成します。This method recursively clones the node and the subtree underneath it.

Clone 呼び出すことと等価CloneNode(true)します。Clone is equivalent to calling CloneNode(true).

次の表は、それぞれ固有の動作を示しますXmlNodeTypeします。The following table describes the specific behavior for each XmlNodeType.

XmlNodeTypeXmlNodeType 複製Clone
属性Attribute 子ノードを含む、属性ノードのクローンを作成します。Clones the attribute node, including child nodes.
CDataCData そのデータの内容を含む CData ノードのクローンを作成します。Clones the CData node, including its data content.
コメントComment そのテキスト コンテンツを含む、コメント ノードを複製します。Clones the comment node, including its text content.
ドキュメントDocument 子ノードを含めて、ドキュメント ノードのクローンを作成します。Clones the document node, including any child nodes.
DocumentFragmentDocumentFragment 子ノードを含めて、ドキュメント フラグメント ノードのクローンを作成します。Clones the document fragment node, including any child nodes.
DocumentTypeDocumentType ドキュメント型ノードのクローンを作成します。Clones the document type node.
要素Element 要素ノード、その属性、および子ノードのクローンを作成します。Clones the element node, its attributes, and any child nodes.
エンティティEntity エンティティ ノードのクローンは作成できません。Entity nodes cannot be cloned.
EntityReferenceEntityReference エンティティ参照ノードを複製します。Clones the entity reference node. 置換テキストは含まれません。The replacement text is not included.
NotationNotation 表記ノードのクローンは作成できません。Notation nodes cannot be cloned.
ProcessingInstructionProcessingInstruction そのターゲットとデータを含む、処理命令ノードを複製します。Clones the processing instruction node, including its target and data.
SignificantWhitespaceSignificantWhitespace データ値を含めて、有意の空白ノードを複製します。Clones the significant white space node, including its data value.
テキストText データ値を含めて、テキスト ノードを複製します。Clones the text node, including its data value.
WhitespaceWhitespace データ値を含めて、空白ノードを複製します。Clones the white space node, including its data value.
XmlDeclarationXmlDeclaration データ値を含めて、XmlDeclaration ノードのクローンを作成します。Clones the XmlDeclaration node, including its data value.
その他のすべてのノード型。All other node types. これらのノード型を複製することはできません。These node types cannot be cloned.

このメソッドは、ドキュメント オブジェクト モデル (DOM) に Microsoft 拡張機能です。This method is a Microsoft extension to the Document Object Model (DOM).

適用対象

こちらもご覧ください