XmlAttribute.InsertBefore Method

Inserts the specified node immediately before the specified reference node.

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

public override XmlNode InsertBefore (
	XmlNode newChild,
	XmlNode refChild
public XmlNode InsertBefore (
	XmlNode newChild, 
	XmlNode refChild
public override function InsertBefore (
	newChild : XmlNode, 
	refChild : XmlNode
) : XmlNode
Not applicable.



The XmlNode to insert.


The XmlNode that is the reference node. The newChild is placed before this node.

Return Value

The XmlNode inserted.

Exception typeCondition


The current 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.


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 end of the list of child nodes. If newChild is an XmlDocumentFragment object, its child nodes are inserted, in the same order, before 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.

For an example of the InsertBefore method, see the InsertBefore method.

Windows 98, Windows Server 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 Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

XNA Framework

Supported in: 1.0