Udostępnij za pośrednictwem


XText.NodeType Właściwość

Definicja

Pobiera typ węzła dla tego węzła.

public:
 virtual property System::Xml::XmlNodeType NodeType { System::Xml::XmlNodeType get(); };
public override System.Xml.XmlNodeType NodeType { get; }
member this.NodeType : System.Xml.XmlNodeType
Public Overrides ReadOnly Property NodeType As XmlNodeType

Wartość właściwości

Typ węzła. W przypadku XText obiektów ta wartość to Text.

Przykłady

Poniższy przykład tworzy drzewo XML zawierające wiele typów węzłów. Następnie wykonuje iterację po drzewie, wyświetlając typ węzła każdego węzła.

Należy pamiętać, że Child2 zawiera XText węzeł, niejawnie przekonwertowany z zawartości ciągu.

// Note that XNode uses XmlNodeType, which is in the System.Xml namespace.  
XDocument xmlTree = new XDocument(  
    new XComment("a comment"),  
    new XProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"hello.xsl\""),  
    new XElement("Root",  
        new XAttribute("Att", "attContent"),  
        new XElement("Child1",  
            new XCData("CDATA content")  
        ),  
        new XElement("Child2", "Text content")  
    )  
);  

foreach (XNode node in xmlTree.DescendantNodes())  
{  
    Console.WriteLine(node.NodeType);  
    if (node.NodeType == XmlNodeType.Element)  
    {  
        foreach (XAttribute att in ((XElement)node).Attributes())  
            Console.WriteLine(att.NodeType);  
    }  
}  
' Note that XNode uses XmlNodeType, which is in the System.Xml namespace.  
Dim xmlTree As XDocument = _  
    <?xml version='1.0'?>  
    <!-- a comment -->  
    <?xml-stylesheet type='text/xsl' href='hello.xsl'?>  
    <Root Att="attContent">  
        <Child1>  
            <![CDATA[CDATA content]]>  
        </Child1>  
        <Child2>Text content</Child2>  
    </Root>  

For Each node As XNode In xmlTree.DescendantNodes  
    Console.WriteLine(node.NodeType.ToString())  
    If node.NodeType = XmlNodeType.Element Then  
        For Each att In DirectCast(node, XElement).Attributes  
            Console.WriteLine(att.NodeType.ToString())  
        Next  
    End If  
Next  

Ten przykład generuje następujące wyniki:

Comment  
ProcessingInstruction  
Element  
Attribute  
Element  
CDATA  
Element  
Text  

Uwagi

Ponieważ wszystkie klasy pochodzące z XObject właściwości zawierają NodeType właściwość, można napisać kod, który działa na kolekcjach betonowej podklasy .XObject Kod może następnie przetestować typ węzła każdego węzła w kolekcji.

Dotyczy

Zobacz też