XmlReader.MoveToNextAttribute Method
Microsoft Silverlight will reach end of support after October 2021. Learn more.
When overridden in a derived class, moves to the next attribute.
Namespace: System.Xml
Assembly: System.Xml (in System.Xml.dll)
Syntax
'Declaration
Public MustOverride Function MoveToNextAttribute As Boolean
public abstract bool MoveToNextAttribute()
Return Value
Type: System.Boolean
true if there is a next attribute; false if there are no more attributes.
Remarks
If the current node is an element node, this method is equivalent to MoveToFirstAttribute. If MoveToNextAttribute returns true, the reader moves to the next attribute; otherwise, the position of the reader does not change.
Examples
Dim output As New StringBuilder()
Dim xmlString As String = _
"<bookstore>" & _
"<book genre='novel' ISBN='10-861003-324'>" & _
"<title>The Handmaid's Tale</title>" & _
"<price>19.95</price>" & _
"</book>" & _
"<book genre='novel' ISBN='1-861001-57-5'>" & _
"<title>Pride And Prejudice</title>" & _
"<price>24.95</price>" & _
"</book>" & _
"</bookstore>"
' Load the file and ignore all white space.
Dim settings As New XmlReaderSettings()
settings.IgnoreWhitespace = True
Using reader As XmlReader = XmlReader.Create(New StringReader(xmlString), settings)
' Move the reader to the second book node.
reader.MoveToContent()
reader.ReadToDescendant("book")
reader.Skip() 'Skip the first book.
' Parse the file starting with the second book node.
Do
Select Case reader.NodeType
Case XmlNodeType.Element
output.AppendLine("<" + reader.Name)
While reader.MoveToNextAttribute()
output.AppendLine(" " + reader.Name + "=" + reader.Value)
End While
output.AppendLine(">")
Case XmlNodeType.Text
output.AppendLine(reader.Value)
Case XmlNodeType.EndElement
output.AppendLine("</" + reader.Name + ">")
End Select
Loop While reader.Read()
OutputTextBlock.Text = output.ToString()
End Using
StringBuilder output = new StringBuilder();
String xmlString =
@"<bookstore>
<book genre='novel' ISBN='10-861003-324'>
<title>The Handmaid's Tale</title>
<price>19.95</price>
</book>
<book genre='novel' ISBN='1-861001-57-5'>
<title>Pride And Prejudice</title>
<price>24.95</price>
</book>
</bookstore>";
// Load the file and ignore all white space.
XmlReaderSettings settings = new XmlReaderSettings();
settings.IgnoreWhitespace = true;
using (XmlReader reader = XmlReader.Create(new StringReader(xmlString), settings))
{
// Move the reader to the second book node.
reader.MoveToContent();
reader.ReadToDescendant("book");
reader.Skip(); //Skip the first book.
// Parse the file starting with the second book node.
do
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
output.AppendLine("<" + reader.Name);
while (reader.MoveToNextAttribute())
{
output.AppendLine(" " + reader.Name + "=" + reader.Value);
}
output.AppendLine(">");
break;
case XmlNodeType.Text:
output.AppendLine(reader.Value);
break;
case XmlNodeType.EndElement:
output.AppendLine("</" + reader.Name + ">");
break;
}
} while (reader.Read());
}
OutputTextBlock.Text = output.ToString();
Version Information
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
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
See Also