XmlNode.ReplaceChild(XmlNode, XmlNode) 메서드

정의

자식 노드를 노드 oldChild 로 바 newChild 꿉니다.

public:
 virtual System::Xml::XmlNode ^ ReplaceChild(System::Xml::XmlNode ^ newChild, System::Xml::XmlNode ^ oldChild);
public virtual System.Xml.XmlNode ReplaceChild(System.Xml.XmlNode newChild, System.Xml.XmlNode oldChild);
abstract member ReplaceChild : System.Xml.XmlNode * System.Xml.XmlNode -> System.Xml.XmlNode
override this.ReplaceChild : System.Xml.XmlNode * System.Xml.XmlNode -> System.Xml.XmlNode
Public Overridable Function ReplaceChild (newChild As XmlNode, oldChild As XmlNode) As XmlNode

매개 변수

newChild
XmlNode

자식 목록에 넣을 새 노드입니다.

oldChild
XmlNode

목록에서 바꿀 노드입니다.

반품

노드가 바뀌었습니다.

예외

이 노드는 노드 형식의 자식 노드를 허용하지 않는 형식입니다 newChild .

newChild 노드의 상위 항목입니다.

newChild 노드를 만든 문서와 다른 문서에서 생성되었습니다.

이 노드는 읽기 전용입니다.

oldChild 노드의 자식이 아닙니다.

예제

다음은 XML 문서의 제목 요소를 바꾸는 예제입니다.

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

public class Sample {

  public static void Main() {

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

    XmlNode root = doc.DocumentElement;

    //Create a new title element.
    XmlElement elem = doc.CreateElement("title");
    elem.InnerText="The Handmaid's Tale";

    //Replace the title element.
    root.ReplaceChild(elem, root.FirstChild);

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);
  }
}
Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        
        Dim doc As New XmlDocument()
        doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")
        
        Dim root As XmlNode = doc.DocumentElement
        
        'Create a new title element.
        Dim elem As XmlElement = doc.CreateElement("title")
        elem.InnerText = "The Handmaid's Tale"
        
        'Replace the title element.
        root.ReplaceChild(elem, root.FirstChild)
        
        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub
End Class

설명

트리에 newChild 이미 있는 경우 먼저 제거됩니다.

newChild 다른 문서에서 만든 경우 노드를 현재 문서로 가져오는 데 사용할 XmlDocument.ImportNode 수 있습니다. 가져온 노드를 메서드에 ReplaceChild 전달할 수 있습니다.

상속자 참고

파생 클래스에서 재정의할 ReplaceChild 때 이벤트가 올바르게 발생하려면 기본 클래스의 메서드를 ReplaceChild 호출해야 합니다.

적용 대상

추가 정보