XmlAttributeCollection::SetNamedItem Method (XmlNode^)

 

Adds a XmlNode using its Name property

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

public:
virtual XmlNode^ SetNamedItem(
	XmlNode^ node
) override

Parameters

node
Type: System.Xml::XmlNode^

An attribute node to store in this collection. The node will later be accessible using the name of the node. If a node with that name is already present in the collection, it is replaced by the new one; otherwise, the node is appended to the end of the collection.

Return Value

Type: System.Xml::XmlNode^

If the node replaces an existing node with the same name, the old node is returned; otherwise, the added node is returned.

Exception Condition
ArgumentException

node was created from a different XmlDocument than the one that created this collection.

This XmlAttributeCollection is read-only.

InvalidOperationException

node is an XmlAttribute that is already an attribute of another XmlElement object. To re-use attributes in other elements, you must clone the XmlAttribute objects you want to re-use.

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->SetNamedItem( newAttr );
   Console::WriteLine( "Display the modified XML...\r\n" );
   Console::WriteLine( doc->OuterXml );
}

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Return to top
Show: