Xml数据绑定到treeView的问题

everbeyond 2006-10-31 05:36:21
我想把 Xml数据绑定到treeView,以下是代码:
public class Report_left : System.Web.UI.Page
{
protected string mainUrl = "";
protected System.Web.UI.HtmlControls.HtmlInputHidden hdUrl;
protected Microsoft.Web.UI.WebControls.TreeView tvMenu;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
this.BindTreeView();
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion
private void BindTreeView()
{
//设置XML文件路径
string xmlPath = Server.MapPath("Report.xml");

//定义XML文档对象
XmlDocument doc = new XmlDocument();
doc.Load(xmlPath);

//定义节点
XmlNodeList parentNode = null;

//定义树节点
TreeNode rootNode = new TreeNode();
rootNode.Text = doc.GetElementsByTagName("Menu").Item(0).Attributes["Text"].Value;
tvMenu.Nodes.Add(rootNode);

parentNode = doc.GetElementsByTagName("MenuChild");

//若节点不为空
if(parentNode != null)
{
XmlNodeList childNode = parentNode[0].ChildNodes;

for(int j=0;j<childNode.Count;j++)
{
TreeNode treeNode = new TreeNode();
if(childNode[j].Attributes["Text"].Value != "")
{
treeNode.Text = childNode[j].Attributes["Text"].Value;
}

treeNode.NavigateUrl = childNode[j].Attributes["NavigateUrl"].Value;
treeNode.Target = childNode[j].Attributes["Target"].Value;
treeNode.ImageUrl = childNode[j].Attributes["ImageUrl"].Value;
rootNode.Nodes.Add(treeNode);
}

rootNode.Expanded = true;
}
}

xml文件:
<?xml version="1.0" encoding="utf-8" ?>
<Menu Text="报表">
<!--Menu说明:Text=菜单名称,ImageUrl=图标位置,NavigateUrl=链接 Target=目标框架 -->
<MenuChild Text="接转站部分">
<Item Text="站库炉参数" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="站库炉档案" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="计量仪表参数" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="计量仪表档案" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="分离器档案" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
</MenuChild>
<MeunChild Text="注水站、连通站通用部分">
<Item Text="电极设备参数表" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="电极设备档案" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="存储设备参数" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="存储设备档案" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="站库泵设备参数" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="站库泵设备档案" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
</MeunChild>
<MeunChild Text="通用部分">
<Item Text="自动化监控设备台帐" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="站库自然属性" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="消防器材数据" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
<Item Text="油田道路" ImageUrl="" NavigateUrl="Bn_report.aspx" Target="mainFrame" />
</MeunChild>
</Menu>
我现在只能把第一个MenuChild绑定上,谁帮解决下
...全文
74 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
andybogard 2006-10-31
  • 打赏
  • 举报
回复
最好写个迭代的算法绑定
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2006-10-31 05:36
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。