XmlAttributeCollection.InsertBefore(XmlAttribute, XmlAttribute) XmlAttributeCollection.InsertBefore(XmlAttribute, XmlAttribute) XmlAttributeCollection.InsertBefore(XmlAttribute, XmlAttribute) XmlAttributeCollection.InsertBefore(XmlAttribute, XmlAttribute) Method

Definition

Inserts the specified attribute immediately before the specified reference attribute.

public:
 System::Xml::XmlAttribute ^ InsertBefore(System::Xml::XmlAttribute ^ newNode, System::Xml::XmlAttribute ^ refNode);
public System.Xml.XmlAttribute InsertBefore (System.Xml.XmlAttribute newNode, System.Xml.XmlAttribute refNode);
member this.InsertBefore : System.Xml.XmlAttribute * System.Xml.XmlAttribute -> System.Xml.XmlAttribute
Public Function InsertBefore (newNode As XmlAttribute, refNode As XmlAttribute) As XmlAttribute

Parameters

newNode
XmlAttribute XmlAttribute XmlAttribute XmlAttribute

The attribute to insert.

refNode
XmlAttribute XmlAttribute XmlAttribute XmlAttribute

The reference attribute. newNode is placed before the refNode.

Returns

The XmlAttribute to insert into the collection.

Exceptions

The newNode was created from a document different from the one that created this collection. Or the refNode is not a member of this collection.

Examples

The following example adds a new attribute to a document.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;

int main()
{
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<book ISBN='1-861001-57-5'><title>Pride And Prejudice</title></book>" );
   
   //Create a new attribute.
   XmlAttribute^ newAttr = doc->CreateAttribute( "genre" );
   newAttr->Value = "novel";
   
   //Create an attribute collection and add the new attribute
   //to the collection.
   XmlAttributeCollection^ attrColl = doc->DocumentElement->Attributes;
   attrColl->InsertBefore( newAttr, attrColl[ 0 ] );
   Console::WriteLine( "Display the modified XML...\r\n" );
   Console::WriteLine( doc->OuterXml );
}
using System;
using System.IO;
using System.Xml;

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

    //Create a new attribute.
    XmlAttribute newAttr = doc.CreateAttribute("genre");
    newAttr.Value = "novel";

    //Create an attribute collection and add the new attribute
    //to the collection.
    XmlAttributeCollection attrColl = doc.DocumentElement.Attributes;
    attrColl.InsertBefore(newAttr, attrColl[0]);

    Console.WriteLine("Display the modified XML...\r\n");
    Console.WriteLine(doc.OuterXml);  
  }
}
Imports System
Imports System.IO
Imports System.Xml

public class Sample

  public shared sub Main()
  
    Dim doc as XmlDocument = new XmlDocument()
    doc.LoadXml("<book ISBN='1-861001-57-5'>" & _
                "<title>Pride And Prejudice</title>" & _
                "</book>")      

    'Create a new attribute.
    Dim newAttr as XmlAttribute = doc.CreateAttribute("genre")
    newAttr.Value = "novel"

    'Create an attribute collection and add the new attribute
    'to the collection.  
    Dim attrColl as XmlAttributeCollection = doc.DocumentElement.Attributes
    attrColl.InsertBefore(newAttr, attrColl.ItemOf(0))

    Console.WriteLine("Display the modified XML...")
    Console.WriteLine(doc.OuterXml)

  end sub
end class

Remarks

If an attribute with the same name is already present in the collection, the original attribute is removed from the collection and newNode is inserted into the collection. If refNode is null, newNode is inserted at the end of the collection.

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

Applies to