共用方式為


在 DOM 中為元素建立新屬性

建立新屬性與建立其他節點類型不同,因為屬性不是節點。 它們是專案節點的屬性,且包含在與 項目相關聯的 XmlAttributeCollection 中。 有多種方式可以建立屬性,並將它附加至元素:

  • 取得元素節點,並使用 SetAttribute 將屬性新增至該專案的屬性集合。

  • 使用 CreateAttribute 方法建立 XmlAttribute 節點、取得元素節點,然後使用 SetAttributeNode 將節點新增至該專案的屬性集合。

下列範例示範如何使用 SetAttribute 方法,將屬性加入專案:

Imports System.IO
Imports System.Xml

Public Class Sample

    Public Shared Sub Main()

        Dim doc As New XmlDocument()
        doc.LoadXml("<book xmlns:bk='urn:samples' bk:ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")
        Dim root As XmlElement = doc.DocumentElement

        ' Add a new attribute.
        root.SetAttribute("genre", "urn:samples", "novel")

        Console.WriteLine("Display the modified XML...")
        Console.WriteLine(doc.InnerXml)
    End Sub
End Class
using System;
using System.IO;
using System.Xml;

public class Sample
{
    public static void Main()
    {
        var doc = new XmlDocument();
        doc.LoadXml("<book xmlns:bk='urn:samples' bk:ISBN='1-861001-57-5'>" +
                    "<title>Pride And Prejudice</title>" +
                    "</book>");
        XmlElement root = doc.DocumentElement;

        // Add a new attribute.
        root.SetAttribute("genre", "urn:samples", "novel");

        Console.WriteLine("Display the modified XML...");
        Console.WriteLine(doc.InnerXml);
    }
}

下列範例示範如何使用 CreateAttribute 方法建立新的屬性。 屬性接著會使用 SetAttributeNode 方法加入 book 元素的屬性集合中。

假設有下列 XML:

<book genre='novel' ISBN='1-861001-57-5'>
<title>Pride And Prejudice</title>
</book>

建立新的屬性,併為其提供值:

Dim attr As XmlAttribute = doc.CreateAttribute("publisher")
attr.Value = "WorldWide Publishing"
XmlAttribute attr = doc.CreateAttribute("publisher");
attr.Value = "WorldWide Publishing";

將屬性附加至元素。

doc.DocumentElement.SetAttributeNode(attr)
doc.DocumentElement.SetAttributeNode(attr);

輸出

<book genre="novel" ISBN="1-861001-57-5" publisher="WorldWide Publishing">
<title>Pride And Prejudice</title>
</book>

您可以在 找到 CreateAttribute完整的程式代碼範例。

如果您已建立 XmlNamedNodeMap 屬性,您可以使用 SetNamedItem 方法依名稱新增屬性。 如需詳細資訊,請參閱 NamedNodeMaps 和 NodeLists 中的節點集合

默認屬性

如果您建立宣告為具有預設屬性的專案,則 XML 檔物件模型 (DOM) 會建立具有其預設值的新預設屬性,並附加至專案。 此時也會建立預設屬性的子節點。

屬性子節點

屬性節點的值會變成其子節點。 只有兩種類型的有效子節點: XmlText 節點和 XmlEntityReference 節點。 這些是子節點,也就是說 ,FirstChildLastChild 等方法會將它們當作子節點來處理。 具有子節點的屬性的區別在嘗試移除屬性或屬性子節點時很重要。 如需詳細資訊,請參閱 從 DOM 中的元素節點移除屬性

另請參閱