Imports System
Imports System.Xml
Imports System.Xml.XPath
Public Class MainClass
Public Shared Sub Main()
Dim markup As String = _
"" & Environment.NewLine & _
" " & Environment.NewLine & _
" " & Environment.NewLine & _
" " & Environment.NewLine & _
""
Dim xRoot As XElement = XElement.Parse(markup, LoadOptions.SetLineInfo)
For Each e As XElement In xRoot.DescendantsAndSelf()
Console.WriteLine("{0}{1}{2}", _
("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString).PadRight(20), _
DirectCast(e, IXmlLineInfo).LineNumber.ToString().PadRight(5), _
DirectCast(e, IXmlLineInfo).LinePosition)
Next
End Sub
End Class