TreeView绑定到xml文件

本文关键字:文件 xml 绑定 TreeView | 更新日期: 2024-07-27 17:05:28

XML:

<Parent Name="Jodi">
<Children Name="xxx" age="20">
<Children Name="zzz" age="21">
</Parent>
<Parent Name="John">
<Children Name="aaa" age="18">
<Children Name="bbb" age="17">
</Parent>

我正在尝试将上面的xml文件绑定到我的asp.net页面上的TreeView;

ASP.Net:

  <asp:XmlDataSource ID="DataSource1" runat="server" DataFile="C:/Parents.xml"></asp:XmlDataSource>
<asp:TreeView ID="tvParents" runat="server">
<DataBindings>
<asp:TreeNodeBinding DataMember="Parent" TextField="#InnerText" />
<asp:TreeNodeBinding DataMember="Children" TextField="#InnerText" />
</DataBindings>
</asp:TreeView>

C#

protected void Page_Load(object sender, EventArgs e)
    {
        tvParents.DataBind();
    }

我正在尝试绑定到树视图,如:

Jodi
  XXX
  ZZZ
John
  aaa
  bbb

我的树视图没有显示在页面上,有人能看一看并指导我吗?

TreeView绑定到xml文件

您必须在Treeview 上添加DataSourceId属性

 <asp:XmlDataSource ID="DataSource1" runat="server" DataFile="C:/Parents.xml"></asp:XmlDataSource>
<asp:TreeView ID="tvParents" runat="server" DataSourceId ="DataSource1">
   <DataBindings>
     <asp:TreeNodeBinding DataMember="Parent" TextField="#InnerText" />
     <asp:TreeNodeBinding DataMember="Child" TextField="#InnerText" />
   </DataBindings>
</asp:TreeView>

您的IIS可能无法访问"C:''Parents.xml"。您最好使用Server.MapPath()并将文件放置在运行ASPX页面的位置。

我今天遇到了类似的事情——你试过把子项的值字段指向属性吗?

<asp:XmlDataSource ID="DataSource1" runat="server" DataFile="C:/Parents.xml">
</asp:XmlDataSource>
<asp:TreeView ID="tvParents" runat="server">
<DataBindings>
<asp:TreeNodeBinding DataMember="Parent" TextField="#InnerText" />
<asp:TreeNodeBinding DataMember="Children" ValueField="Name" TextField="#InnerText" />
</DataBindings>
</asp:TreeView>