Export (0) Print
Expand All

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
)

Parameters

newChild
Type: System.Xml.XmlNode

The XmlNode to insert.

refChild
Type: System.Xml.XmlNode

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

Return Value

Type: System.Xml.XmlNode
The node being inserted.

ExceptionCondition
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 null, insert newChild at the beginning of the list of child nodes. All the contents of the newChild are inserted, in the same order, after refChild. If the newChild is already in the tree, it is removed from its original position and added to its target position. For more information about inserting nodes, see Inserting Nodes into an XML Document.

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

  }
}

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Show:
© 2014 Microsoft