XmlNode.InsertAfter(XmlNode, XmlNode) 方法

定义

将指定的节点紧接着插入指定的引用节点之后。

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

参数

newChild
XmlNode

要插入的节点。

refChild
XmlNode

引用节点。 newChild 放置在 refChild 之后。

返回

插入的节点。

例外

此节点的类型不允许 newChild 节点类型的子节点。

newChild 是此节点的上级节点。

newChild 是从不同于创建此节点的文档创建的。

refChild 不是此节点的子级。

该节点是只读的。

示例

以下示例向 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

注解

如果 refChildnull,请在子节点列表的开头插入 newChildnewChild的所有内容都按相同的顺序在 之后refChild插入。 newChild如果 已在树中,则会将其从其原始位置删除并添加到其目标位置。 有关插入节点的详细信息,请参阅 将节点插入 XML 文档

如果要插入的节点是从另一个文档创建的,则可以使用 XmlDocument.ImportNode 将节点导入当前文档。 然后,可以将导入的节点插入到当前文档中。

此方法是文档对象模型 (DOM) 的Microsoft扩展。

继承者说明

在派生类中重写 InsertAfter 时,若要正确引发事件,必须调用 InsertAfter 基类的 方法。

适用于

另请参阅