给你一个递归算法,这个算法是得到xml中的所有节点,自己稍微改改
//增加单个节点
private void Expand(XmlNode aXmlNode,TreeNode aTreeNode){
if (aXmlNode.ChildNodes.Count>0){
for (int i=0; i<aXmlNode.ChildNodes.Count ; i++) {
TreeNode treeTmpNode;
treeTmpNode=aTreeNode.Nodes.Add(aXmlNode.ChildNodes.Item (i).Name.ToString());
}
}
}
//增加所有分支(递归算法)
private void ExpandAll(XmlNode aXmlNode,TreeNode aTreeNode)
{
Expand(aXmlNode,aTreeNode);
//增加子节点
if (aXmlNode.ChildNodes.Count>0){
for (int i=0; i<aXmlNode.ChildNodes.Count ; i++) {
ExpandAll(aXmlNode.ChildNodes.Item(i),aTreeNode.Nodes[i] );
}
}
}使用方法:
//得到Xml的根,作为TreeView的根节点
XmlNode xmlRootNode;
TreeNode treeRootNode; xmlRootNode=xmldom.DocumentElement;
treeRootNode=treeView1.Nodes.Add(xmlRootNode.Name.ToString());
ExpandAll(xmlRootNode,treeRootNode);
//增加单个节点
private void Expand(XmlNode aXmlNode,TreeNode aTreeNode){
if (aXmlNode.ChildNodes.Count>0){
for (int i=0; i<aXmlNode.ChildNodes.Count ; i++) {
TreeNode treeTmpNode;
treeTmpNode=aTreeNode.Nodes.Add(aXmlNode.ChildNodes.Item (i).Name.ToString());
}
}
}
//增加所有分支(递归算法)
private void ExpandAll(XmlNode aXmlNode,TreeNode aTreeNode)
{
Expand(aXmlNode,aTreeNode);
//增加子节点
if (aXmlNode.ChildNodes.Count>0){
for (int i=0; i<aXmlNode.ChildNodes.Count ; i++) {
ExpandAll(aXmlNode.ChildNodes.Item(i),aTreeNode.Nodes[i] );
}
}
}使用方法:
//得到Xml的根,作为TreeView的根节点
XmlNode xmlRootNode;
TreeNode treeRootNode; xmlRootNode=xmldom.DocumentElement;
treeRootNode=treeView1.Nodes.Add(xmlRootNode.Name.ToString());
ExpandAll(xmlRootNode,treeRootNode);
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货