Freigeben über


XmlNode.ReplaceChild(XmlNode, XmlNode) Methode

Definition

Ersetzt den untergeordneten oldChild-Knoten durch den newChild-Knoten.

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

Parameter

newChild
XmlNode

Der neue Knoten, der in die Liste der untergeordneten Elemente eingefügt werden soll.

oldChild
XmlNode

Der Knoten, der in der Liste ersetzt wird.

Gibt zurück

XmlNode

Der ersetzte Knoten.

Ausnahmen

Der Typ dieses Knotens lässt keine untergeordneten Knoten vom Typ des newChild-Knotens zu.

newChild ist eine frühere Version dieses Knotens.

newChild wurde nicht aus dem Dokument erstellt, aus dem dieser Knoten erstellt wurde.

Dieser Knoten ist schreibgeschützt.

oldChild ist kein untergeordnetes Element dieses Knotens.

Beispiele

Im folgenden Beispiel wird das Titelelement im XML-Dokument ersetzt.

#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

Hinweise

Wenn sich die newChild Struktur bereits befindet, wird sie zuerst entfernt.

Wenn das newChild Dokument aus einem anderen Dokument erstellt wurde, können XmlDocument.ImportNode Sie den Knoten in das aktuelle Dokument importieren. Der importierte Knoten kann dann an die ReplaceChild Methode übergeben werden.

Hinweise für Vererber

Wenn sie in einer abgeleiteten Klasse außer Kraft ReplaceChild gesetzt werden, müssen Sie die ReplaceChild Methode der Basisklasse aufrufen, damit Ereignisse ordnungsgemäß ausgelöst werden.

Gilt für

Siehe auch