XmlNode.AppendChild(XmlNode) Metodo

Definizione

Aggiunge il nodo specificato alla fine dell'elenco dei nodi figlio del nodo corrente.

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

Parametri

newChild
XmlNode

Nodo da aggiungere. L'intero contenuto del nodo da aggiungere viene spostato nel percorso specificato.

Restituisce

Nodo aggiunto.

Eccezioni

Per questo tipo di nodi non sono consentiti elementi figlio di tipo newChild.

newChild è un predecessore di questo nodo.

Il nodo newChild è stato creato da un documento diverso da quello che ha creato il nodo corrente.

Il nodo è di sola lettura.

Esempio

Nell'esempio seguente viene aggiunto un nuovo nodo al documento 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 node.
   XmlElement^ elem = doc->CreateElement( "price" );
   elem->InnerText = "19.95";
   
   //Add the node to the document.
   root->AppendChild( elem );
   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 node.
    XmlElement elem = doc.CreateElement("price");
    elem.InnerText="19.95";

    //Add the node to the document.
    root.AppendChild(elem);

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);
  }
}
Option Explicit
Option Strict

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 node.
        Dim elem As XmlElement = doc.CreateElement("price")
        elem.InnerText = "19.95"
        
        'Add the node to the document.
        root.AppendChild(elem)
        
        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub
End Class

Output:

Display the modified XML...
<?xml version="1.0" encoding="IBM437"?>
<book genre="novel" ISBN="1-861001-57-5">
  <title>Pride And Prejudice</title>
  <price>19.95</price>

Commenti

Se l'oggetto newChild è già presente nell'albero, viene rimosso dalla posizione originale e aggiunto alla posizione di destinazione. Per altre informazioni sull'inserimento di nodi, vedere Inserimento di nodi in un documento XML.

Se il nodo inserito è stato creato da un altro documento, è possibile usare XmlDocument.ImportNode per importare il nodo nel documento corrente. Il nodo importato può quindi essere inserito nel documento corrente.

Note per gli eredi

Quando si esegue l'override AppendChild in una classe derivata, per generare correttamente gli eventi, è necessario chiamare il AppendChild metodo della classe base.

Si applica a

Vedi anche