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、子ノードの一覧の先頭に を挿入 newChild します。 の内容 newChild はすべて、 の後 refChildに同じ順序で挿入されます。 newChildが既にツリー内にある場合は、元の位置から削除され、ターゲット位置に追加されます。 ノードの挿入の詳細については、「 XML ドキュメントへのノードの挿入」を参照してください。

挿入するノードが別のドキュメントから作成された場合は、 を使用 XmlDocument.ImportNode してノードを現在のドキュメントにインポートできます。 インポートしたノードを現在のドキュメントに挿入できます。

このメソッドは、ドキュメント オブジェクト モデル (DOM) のMicrosoft拡張機能です。

注意 (継承者)

派生クラスでオーバーライドする InsertAfter 場合、イベントを正しく発生させるには、基底クラスの メソッドを InsertAfter 呼び出す必要があります。

適用対象

こちらもご覧ください