ASP.NET 2.0中层次数据的处理
来源: 编辑:duliying 更新日期:2008-6-11 14:51:47 浏览:360 次
数据源控件可以同时暴露平面表格式的或层次的数据。前面演示的SqlDataSource和ObjectDataSource控件都是平面表格式的数据源控件。ASP.NET 2.0还包含两个层次数据源控件:用于连接XML文件的XmlDataSource和用于连接站点导航数据的SiteMapDataSource。这一部分将介绍这些控件的使用技术。
TreeView和Menu控件
数据绑定控件与数据源控件类似,也可以是层次的。表格式数据绑定控件显示数据列表或表格,层次数据绑定控件能够用递规方式获取层次数据,在UI中用父-子关系显示数据。ASP.NET 2.0中的分层数据绑定控件的例子有TreeView和Menu控件。下面将介绍把这些控件绑定到层次数据源的一些技术,包括很多示例。
绑定到XML
XmlDataSource控件允许其它控件绑定到XML数据。XmlDataSource支持DataFile属性,它被用于指定作为输入(input)的XML数据文件的路径。你还可以指定TranformFile属性,给数据应用XSLT转换;设置XPath属性来指定需要暴露的数据源节点的子集。
下面的例子演示了一个通过XmlDataSource控件绑定到XML文件的TreeView控件。这个TreeView把每个TreeNode对象的属性与分层树中的XML节点的属性关联起来了(为了进行数据绑定,XML节点的属性都被处理为数据项的属性)。在默认情况下,TreeView控件通过调用对象的ToString()方法简单地显示数据项。它显示了XML节点的元素(element)名称,这样你就可以看到TreeView所绑定的节点层次。它不一定能够显示出你所需要的内容,但它提供了一个很好的出发点,未来你将更容易定制XML数据的显示方式。
<asp:XmlDataSource ID="MySource" DataFile="~/App_Data/Bookstore.xml" runat="server"/>
<asp:TreeView ID="TreeView1" SkinId="Bookstore" DataSourceId="MySource"
ExpandDepth="3" MaxDataBindDepth="3" runat="server" />
为了让TreeView显示更有意义的内容,你可以为树中的每个节点指定不同的数据绑定。为了定义层次数据项的字段如何映射到TreeNode属性,你可以把TreeNodeBinding对象添加到TreeView的Databindings集合中。TreeNodeBinding的两个重要属性决定了如何在层次数据项集合上使用绑定。DataMember属性指定了数据项的类型或者XML数据中用于绑定的元素名称。Depth属性指定了应用于层次树的数据绑定的深度。你可以设置Dat
第1页/总7页
第一页 上一页
下一页 最后一页
【发表评论】