Export (0) Print
Expand All
0 out of 1 rated this helpful - Rate this topic

XmlNode.InsertAfter Method

Inserts the specified node immediately after the specified reference node.

Namespace: System.Xml
Assembly: System.Xml (in system.xml.dll)

public virtual XmlNode InsertAfter (
	XmlNode newChild,
	XmlNode refChild
)
public XmlNode InsertAfter (
	XmlNode newChild, 
	XmlNode refChild
)
public function InsertAfter (
	newChild : XmlNode, 
	refChild : XmlNode
) : XmlNode

Parameters

newChild

The XmlNode to insert.

refChild

The XmlNode that is the reference node. The newNode is placed after the refNode.

Return Value

The node being inserted.
Exception typeCondition

InvalidOperationException

This node is of a type that does not allow child nodes of the type of the newChild node.

The newChild is an ancestor of this node.

ArgumentException

The newChild was created from a different document than the one that created this node.

The refChild is not a child of this node.

This node is read-only.

If refChild is a null reference (Nothing in Visual Basic), insert newChild at the beginning of the list of child nodes. If newChild is an XmlDocumentFragment object, its child nodes are inserted, in the same order, after refChild. If the newChild is already in the tree, it is first removed.

If the node being inserted was created from another document, you can use XmlDocument.ImportNode to import the node to the current document. The imported node can then be inserted into the current document.

This method is a Microsoft extension to the Document Object Model (DOM).

Notes to Inheritors When overriding InsertAfter in a derived class, in order for events to be raised correctly, you must call the InsertAfter method of the base class.

The following example adds a new node to the XML document.

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);

  }
}

import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    public static void main(String[] args)
    {
        XmlDocument doc = new XmlDocument();
        doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>"
            + "<title>Pride And Prejudice</title>"
            + "</book>");

        XmlNode root = doc.get_DocumentElement();

        //Create a new node.
        XmlElement elem = doc.CreateElement("price");
        elem.set_InnerText("19.95");

        //Add the node to the document.
        root.InsertAfter(elem, root.get_FirstChild());

        Console.WriteLine("Display the modified XML...");
        doc.Save(Console.get_Out());
    } //main 
} //Sample

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.