XmlAttributeCollection::SetNamedItem Method (XmlNode^)
Assembly: System.Xml (in System.Xml.dll)
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 ); }
Available since 10
.NET Framework
Available since 1.1