Sdílet prostřednictvím


XmlNode.ReplaceChild(XmlNode, XmlNode) Metoda

Definice

Nahradí podřízený uzel oldChild newChild uzlem.

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

Parametry

newChild
XmlNode

Nový uzel, který se má vložit do podřízeného seznamu.

oldChild
XmlNode

Uzel, který se nahrazuje v seznamu.

Návraty

XmlNode

Uzel se nahradil.

Výjimky

Tento uzel je typu, který neumožňuje podřízené uzly typu newChild uzlu.

Toto newChild je nadřazený uzel.

Byl newChild vytvořen z jiného dokumentu než z dokumentu, který vytvořil tento uzel.

Tento uzel je jen pro čtení.

Není oldChild podřízeným uzlem.

Příklady

Následující příklad nahradí element title v dokumentu XML.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew 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 );
}
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

Poznámky

newChild Pokud je již ve stromu, je nejprve odebrán.

newChild Pokud byl vytvořen z jiného dokumentu, můžete ho použít XmlDocument.ImportNode k importu uzlu do aktuálního dokumentu. Importovaný uzel se pak dá předat metodě ReplaceChild .

Poznámky pro dědice

Při přepsání ReplaceChild v odvozené třídě, aby události byly vyvolány správně, je nutné volat ReplaceChild metodu základní třídy.

Platí pro

Viz také