XDocument doc = XDocument.Load(@"c:\test.xml");
XElement root = doc.Root;
TreeNode tn= treeView1.Nodes.Add(root.Name.ToString());
getxml(tn, root);
void getxml(TreeNode tn,XElement xe)
{
//遍历所有子节点
foreach (XElement item in xe.Elements())
{
//如果子节点有子节
if (item.Elements().Count() > 0)
{
TreeNode tnn = tn.Nodes.Add(item.Name.ToString());
if (item.Attributes().Count() == 0)
{
// tnn.Text = item.Name + "-" + item.Value;
}
else
{
string str = "";
foreach (var item1 in item.Attributes())
{
// TreeNode tnnn = tnn.Nodes.Add(item1.Name + "-" + item1.Value);
str += item1.Name + "-" + item1.Value + " ";
}
str = "[" + str + "]";
tnn.Text += str;
}
getxml(tnn, item);
}
else
{
//如果子节点没有子节点
TreeNode tnn = tn.Nodes.Add(item.Name.ToString());
if (item.Attributes().Count() == 0)
{
tnn.Text = item.Name + "-" + item.Value;
}
else
{
foreach (var item1 in item.Attributes())
{
TreeNode tnnn = tnn.Nodes.Add(item1.Name + "-" + item1.Value);
}
}
}
}
}