treeView绑定XML文档
2007-09-03 12:12
435 查看
在家这两天,共装了两遍系统<?xml version="1.0" encoding="utf-8" ?>
<!-- 注意:treeview 为根结点,nodes 为父级节点,node 为子节点。
-->
<treeview>
<nodes>
<name>根节点1</name>
<zuozhe />
<liupai />
<link />
<node>
<name>测试节点1 -1</name>
<zuozhe />
<liupai />
</node>
<node>
<name>测试节点1 -2</name>
<zuozhe />
<liupai />
<link />
</node>
</nodes>
在页面中加一个TreeView控件和一个button控件。写一个递归过程如下:
/// <summary>
/// 构建树。遍历XML所有的节点
/// </summary>
/// <param name="XMLNodes">XML节点</param>
/// <param name="TreeNode">树的当前节点</param>
private void BuildTree(XmlNodeList XMLNodes, TreeNodeCollection treeNodes)
{
string sValue;
for (int i = 0; i < XMLNodes.Count; i++)
{
if (XMLNodes[i].NodeType == XmlNodeType.Element)
{
TreeNode tNode = new TreeNode();
sValue = "";
if (XMLNodes[i].HasChildNodes && XMLNodes[i].ChildNodes.Count == 1 && XMLNodes[i].ChildNodes[0].NodeType == XmlNodeType.Text)
{
sValue = XMLNodes[i].ChildNodes[0].Value;
}
else
{
for (int j = 0; j < XMLNodes[i].Attributes.Count; j++)
{
sValue += XMLNodes[i].Attributes[j].Name + "=" + XMLNodes[i].Attributes[j].Value + ";";
}
}
if (sValue == "")
{
tNode.Text = XMLNodes[i].Name;
}
else
{
tNode.Text = XMLNodes[i].Name + ":" + sValue;
}
treeNodes.Add(tNode);
if(XMLNodes[i].HasChildNodes)
{
BuildTree(XMLNodes[i].ChildNodes, tNode.Nodes);
}
}
双击button,加入以下代码:
private void button1_Click(object sender, EventArgs e)
{
XmlDocument doc=new XmlDocument();
doc.Load(@"C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Projects\WindowsApplication1\WindowsApplication1\XMLFile1.xml");
BuildTree(doc.ChildNodes, treeView1.Nodes); ||调用递归
}
<!-- 注意:treeview 为根结点,nodes 为父级节点,node 为子节点。
-->
<treeview>
<nodes>
<name>根节点1</name>
<zuozhe />
<liupai />
<link />
<node>
<name>测试节点1 -1</name>
<zuozhe />
<liupai />
</node>
<node>
<name>测试节点1 -2</name>
<zuozhe />
<liupai />
<link />
</node>
</nodes>
在页面中加一个TreeView控件和一个button控件。写一个递归过程如下:
/// <summary>
/// 构建树。遍历XML所有的节点
/// </summary>
/// <param name="XMLNodes">XML节点</param>
/// <param name="TreeNode">树的当前节点</param>
private void BuildTree(XmlNodeList XMLNodes, TreeNodeCollection treeNodes)
{
string sValue;
for (int i = 0; i < XMLNodes.Count; i++)
{
if (XMLNodes[i].NodeType == XmlNodeType.Element)
{
TreeNode tNode = new TreeNode();
sValue = "";
if (XMLNodes[i].HasChildNodes && XMLNodes[i].ChildNodes.Count == 1 && XMLNodes[i].ChildNodes[0].NodeType == XmlNodeType.Text)
{
sValue = XMLNodes[i].ChildNodes[0].Value;
}
else
{
for (int j = 0; j < XMLNodes[i].Attributes.Count; j++)
{
sValue += XMLNodes[i].Attributes[j].Name + "=" + XMLNodes[i].Attributes[j].Value + ";";
}
}
if (sValue == "")
{
tNode.Text = XMLNodes[i].Name;
}
else
{
tNode.Text = XMLNodes[i].Name + ":" + sValue;
}
treeNodes.Add(tNode);
if(XMLNodes[i].HasChildNodes)
{
BuildTree(XMLNodes[i].ChildNodes, tNode.Nodes);
}
}
双击button,加入以下代码:
private void button1_Click(object sender, EventArgs e)
{
XmlDocument doc=new XmlDocument();
doc.Load(@"C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Projects\WindowsApplication1\WindowsApplication1\XMLFile1.xml");
BuildTree(doc.ChildNodes, treeView1.Nodes); ||调用递归
}
相关文章推荐
- winform实现 绑定xml文档到treeview 控件
- TreeView绑定XML文档
- net9:磁盘目录文件保存到XML文档及其XML文档的读写操作,以及绑定XML到treeview
- 绑定任意格式的XML文档到WPF的TreeView
- winform实现 绑定xml文档到treeview 控件
- 创建可编辑的xml文档(之一)绑定xml文档到treeview 控件
- 绑定任意格式的XML文档到WPF的TreeView
- C#打开xml,并绑定TreeView
- C# TreeView绑定 能展示xml属性
- TreeView绑定xml数据源
- C# 回顾简单XML动态递归绑定TreeView
- 将XML文件绑定到TreeView,建立树形导航
- TreeView 绑定XML文件
- TreeView绑定XML
- HTML表格中绑定显示XML文档内容的简单实例
- 创建可编辑的xml文档(之五)执行中的treeview 控件
- ASP.NET实现TreeView的XML数据源绑定实例代码
- ASP.NET实现TreeView的XML数据源绑定实例代码
- WPF 数据绑定TreeView+DataGrid+XML
- TreeView控件与XML的绑定