XmlNode.InsertAfter(XmlNode, XmlNode) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inserisce il nodo specificato immediatamente dopo il nodo dei riferimenti indicato.
public:
virtual System::Xml::XmlNode ^ InsertAfter(System::Xml::XmlNode ^ newChild, System::Xml::XmlNode ^ refChild);
public virtual System.Xml.XmlNode InsertAfter (System.Xml.XmlNode newChild, System.Xml.XmlNode refChild);
public virtual System.Xml.XmlNode? InsertAfter (System.Xml.XmlNode newChild, System.Xml.XmlNode? refChild);
abstract member InsertAfter : System.Xml.XmlNode * System.Xml.XmlNode -> System.Xml.XmlNode
override this.InsertAfter : System.Xml.XmlNode * System.Xml.XmlNode -> System.Xml.XmlNode
Public Overridable Function InsertAfter (newChild As XmlNode, refChild As XmlNode) As XmlNode
Parametri
- newChild
- XmlNode
Nodo da inserire.
- refChild
- XmlNode
Nodo di riferimento.
newChild
è posizionato dopo refChild
.
Restituisce
Nodo da inserire.
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.
refChild
non è un nodo figlio del 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->InsertAfter( 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 node.
XmlElement elem = doc.CreateElement("price");
elem.InnerText="19.95";
//Add the node to the document.
root.InsertAfter(elem, root.FirstChild);
Console.WriteLine("Display the modified XML...");
doc.Save(Console.Out);
}
}
Option Strict
Option Explicit
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.InsertAfter(elem, root.FirstChild)
Console.WriteLine("Display the modified XML...")
doc.Save(Console.Out)
End Sub
End Class
Commenti
Se refChild
è null
, inserire newChild
all'inizio dell'elenco di nodi figlio. Tutti i contenuti di newChild
vengono inseriti, nello stesso ordine, dopo refChild
. 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 da inserire è 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.
Questo metodo è un'estensione Microsoft al dom (Document Object Model).
Note per gli eredi
Quando si esegue l'override InsertAfter
in una classe derivata, affinché gli eventi vengano generati correttamente, è necessario chiamare il InsertAfter
metodo della classe base.