XNode.NextNode 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取此节点的下一个同级节点。
public:
property System::Xml::Linq::XNode ^ NextNode { System::Xml::Linq::XNode ^ get(); };
public System.Xml.Linq.XNode NextNode { get; }
public System.Xml.Linq.XNode? NextNode { get; }
member this.NextNode : System.Xml.Linq.XNode
Public ReadOnly Property NextNode As XNode
属性值
包含下一个同级节点的 XNode。
示例
以下示例使用此属性循环访问节点。
XElement xmlTree = new XElement("Root",
new XElement("Child1", 1),
new XText("Some Text"),
new XElement("Child2",
2,
new XElement("GrandChild", "GrandChild Content")
),
new XComment("a comment"),
new XElement("Child3")
);
XNode node = xmlTree.Element("Child2");
do {
StringBuilder sb = new StringBuilder();
sb.Append(String.Format("NodeType: {0}", node.NodeType.ToString().PadRight(10)));
switch (node.NodeType)
{
case XmlNodeType.Text:
sb.Append((node as XText).Value);
break;
case XmlNodeType.Element:
sb.Append((node as XElement).Name);
break;
case XmlNodeType.Comment:
sb.Append((node as XComment).Value);
break;
}
Console.WriteLine(sb.ToString());
}
while ((node = node.NextNode) != null);
Dim xmlTree As XElement = _
<Root>
<Child1>1</Child1>Some Text
<Child2>2
<GrandChild>GrandChild Content</GrandChild>
</Child2>
<!--a comment-->
<Child3>3</Child3>
</Root>
Dim node As XNode = xmlTree.Element("Child2")
Do
Dim sb As StringBuilder = New StringBuilder()
sb.Append(String.Format("NodeType: {0}", node.NodeType.ToString().PadRight(10)))
Select Case node.NodeType
Case XmlNodeType.Text
sb.Append(DirectCast(node, XText).Value)
Case XmlNodeType.Element
sb.Append(DirectCast(node, XElement).Name)
Case XmlNodeType.Comment
sb.Append(DirectCast(node, XComment).Value)
End Select
Console.WriteLine(sb.ToString())
node = node.NextNode
Loop While (Not (node Is Nothing))
该示例产生下面的输出:
NodeType: Element Child2
NodeType: Comment a comment
NodeType: Element Child3
注解
如果此 XNode 没有父节点,或者没有下一个节点,则此属性返回 null
。