XmlNode.InsertAfter(XmlNode, XmlNode) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wstawia określony węzeł bezpośrednio po określonym węźle odniesienia.
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
Parametry
- newChild
- XmlNode
Węzeł do wstawienia.
- refChild
- XmlNode
Węzeł odniesienia.
newChild
jest umieszczana po refChild
.
Zwraca
Wstawiony węzeł.
Wyjątki
Ten węzeł jest typu, który nie zezwala na węzły podrzędne typu węzła newChild
.
Element newChild
jest elementem nadrzędnym tego węzła.
Plik newChild
został utworzony na podstawie innego dokumentu niż ten, który utworzył ten węzeł.
Element refChild
nie jest elementem podrzędnym tego węzła.
Ten węzeł jest tylko do odczytu.
Przykłady
Poniższy przykład dodaje nowy węzeł do 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 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
Uwagi
Jeśli refChild
jest to null
, wstaw newChild
na początku listy węzłów podrzędnych. Cała zawartość elementu newChild
jest wstawiana w tej samej kolejności po refChild
. Jeśli obiekt newChild
znajduje się już w drzewie, zostanie usunięty z oryginalnej pozycji i dodany do pozycji docelowej. Aby uzyskać więcej informacji na temat wstawiania węzłów, zobacz Wstawianie węzłów do dokumentu XML.
Jeśli wstawiony węzeł został utworzony z innego dokumentu, możesz użyć XmlDocument.ImportNode polecenia , aby zaimportować węzeł do bieżącego dokumentu. Zaimportowany węzeł można następnie wstawić do bieżącego dokumentu.
Ta metoda jest rozszerzeniem Microsoft do modelu obiektów dokumentów (DOM).
Uwagi dotyczące dziedziczenia
Podczas zastępowania InsertAfter
klasy pochodnej w celu poprawnego wywoływania zdarzeń należy wywołać metodę InsertAfter
klasy bazowej.