private void TreeViewBingXml()
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Application.StartupPath+"/Source.xml");
XmlNodeList nodeList = xmlDoc.SelectSingleNode("Cars").ChildNodes;
treeView1.Nodes.Add("cars");
foreachFun(nodeList, treeView1.Nodes[0].Nodes);
}
private void foreachFun(XmlNodeList nodelist,TreeNodeCollection Tnc)
{
for (int i = 0; i < nodelist.Count; i++)
{
XmlNode xe = nodelist[i];
//如果此节点不是文本节点,把此节点加到树上
if (xe.NodeType != XmlNodeType.Text)
{
string NodeStr = xe.InnerText;
if (NodeStr.Length > 10)
{
NodeStr = NodeStr.Substring(0, 10);
}
Tnc.Add(xe.Name + " " + NodeStr);
//如果此节点有孩子节点,则继续循环
if (xe.ChildNodes != null)
{
XmlNodeList xeChildNode = xe.ChildNodes;
TreeNodeCollection Tncc = Tnc[i].Nodes;
foreachFun(xeChildNode, Tncc);
}
}
}
}