Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Depth Property

XmlReader.Depth Property

When overridden in a derived class, gets the depth of the current node in the XML document.

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

'Declaration
Public MustOverride ReadOnly Property Depth As Integer

Property Value

Type: System.Int32
The depth of the current node in the XML document.


' Create the XML fragment to be parsed.
Dim xmlFrag As String = _
    "<book>" & _
         "<misc>" & _
             "<style>paperback</style>" & _
             "<pages>240</pages>" & _
         "</misc>" & _
     "</book>"

' Create the XmlNamespaceManager.
Dim nsmgr As XmlNamespaceManager = New XmlNamespaceManager(New NameTable())

' Create the XmlParserContext.
Dim context As New XmlParserContext(Nothing, nsmgr, Nothing, XmlSpace.None)

Dim output As New StringBuilder()
' Create the reader.
Using reader As XmlReader = XmlReader.Create(New StringReader(xmlFrag), Nothing, context)

    Dim lineInfo As IXmlLineInfo = CType(reader, IXmlLineInfo)
    If lineInfo.HasLineInfo() Then

        ' Parse the XML and display each node.
        While reader.Read()
            Select Case reader.NodeType
                Case XmlNodeType.Element
                    output.Append(reader.Depth.ToString() + " " + _
                        lineInfo.LineNumber.ToString() + ", " + _
                        lineInfo.LinePosition.ToString())
                    output.AppendLine("<" + reader.Name + ">")
                Case XmlNodeType.Text
                    output.Append(reader.Depth.ToString() + " " + _
                        lineInfo.LineNumber.ToString() + ", " + _
                        lineInfo.LinePosition.ToString())
                    output.AppendLine("  " + reader.Value)
                Case XmlNodeType.EndElement
                    output.Append(reader.Depth.ToString() + " " + _
                        lineInfo.LineNumber.ToString() + ", " + _
                        lineInfo.LinePosition.ToString())
                    output.AppendLine("</" + reader.Name + ">")
            End Select
        End While
    End If
End Using

' Display the output to the TextBlock control
OutputTextBlock.Text = output.ToString()


Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

ADD
Show:
© 2015 Microsoft