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 上添加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>