XML怎么查找父节点下的子节点,绑定在tree上
<?xml version="1.0" encoding="utf-8" ?><TreeNode>
<module name="仓库管理" ID="1">
<submodule name="现场收料" ID="1_1" ParentId="1">
<disColumn>材料明细,出库记录,点验收录,附件列表,操作日志</disColumn>
<ColumnID>btnMaterialDetail,btnTraceOut,btnTraceExam,btnFiles,btnshowLog</ColumnID>
<IsVisible>1,1,1,1,1</IsVisible>
</submodule>
<submodule name="现场发料" ID="1_2" ParentId="1">
<disColumn>材料明细,出库记录,点验收录,附件列表,操作日志</disColumn>
<ColumnID>btnMaterialDetail,btnTraceOut,btnTraceExam,btnFiles,btnshowLog</ColumnID>
<IsVisible>1,1,1,1,1</IsVisible>
</submodule>
</module>
</TreeNode>
这是我的XML ..我要找到 module name="仓库管理" 下的 submodule 中的name --------------------编程问答-------------------- --------------------编程问答-------------------- 根节点下就是modal,然后查找属性name为你的条件的,然后再遍历他下面的子节点,看xmldocument帮助 --------------------编程问答-------------------- 我有很多节点..我现在只是配置了一个..
查找二级节点的时候我用绝对定位
XmlNodeList nodelist = Doc.SelectNodes(@"/TreeNode/module[@name='"+ChildrenNode.Text+"' and @ID='"+ChildrenNode.Tag+"']/submodule");
可是程序一直报 元素列表已更改。枚举操作未能继续。 --------------------编程问答--------------------
<?xml version="1.0" encoding="utf-8" ?>
<Root url="Index.aspx" name="日报系统总览" describe="日报系统">
<Parent url="Default.aspx" name="任务管理" describe="任务管理" >
<Child url="MyWork.aspx" name="我的工作台" describe="我的工作台" />
<Child url="OverWork.aspx" name="以完成的任务" describe="以完成的任务" />
<Child url="dailyPaper.aspx" name="日报" describe="日报" />
<Child url="weekly.aspx" name="周报" describe="周报" />
</Parent>
</Root>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Left : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
XmlDataSource XmlComputer = new XmlDataSource(); //建立XmlDataSource实例
XmlComputer.ID = "ComputerProducts";
XmlComputer.DataFile = "XMLFile.xml"; //指定XmlDataSource来源为XML文件
TreeView1.DataSource = XmlComputer; //指定xml数据
//或是您可以用下列方式声明
//指定TreeView的数据源为XmlComputer
//TreeView1.DataSourceID = XmlComputer.UniqueID;
//Page.Controls.Add(XmlComputer);
//建立根节点
TreeNodeBinding RootBinding = new TreeNodeBinding();
RootBinding.DataMember = "Root"; //指定RootBinding数据成员为Root节点
RootBinding.NavigateUrlField = "url"; //指定RootBinding的NavigateUrl为url
RootBinding.TextField = "name"; //指定TextField为name
RootBinding.ToolTipField = "describe"; //指定ToolTipField为describe
RootBinding.Target = "mainframe";
//将RootBinding加入DataBindings之中
TreeView1.DataBindings.Add(RootBinding);
//建立父节点
TreeNodeBinding ParentBinding = new TreeNodeBinding();
ParentBinding.DataMember = "Parent";
ParentBinding.NavigateUrlField = "url";
ParentBinding.TextField = "name";
ParentBinding.ToolTipField = "describe";
ParentBinding.Target = "mainframe";
TreeView1.DataBindings.Add(ParentBinding);
//建立子节点(叶节点)
TreeNodeBinding ChildBinding = new TreeNodeBinding();
ChildBinding.DataMember = "Child";
ChildBinding.NavigateUrlField = "url";
ChildBinding.TextField = "name";
ChildBinding.ToolTipField = "describe";
ChildBinding.Target = "mainframe";
TreeView1.DataBindings.Add(ChildBinding);
//Page.FindControl("Form1").Controls.Add(TreeView1);
this.TreeView1.DataBind(); //TreeView进行数据绑定
}
}
}
http://download.csdn.net/source/1421706
--------------------编程问答-------------------- 忘了说了..这是vs2003 和 第三方tree控件
补充:.NET技术 , ASP.NET