29-用DataList和Repeater来显示数据

在之前的28篇教程的例子里,如果我们需要显示某个数据源的多条记录,我们使用

GridView .GridView 的一行表示数据源的一条记录,列表示一个字段.虽然GridView 用来显示数据,分页,排序,编辑,删除非常的方便,但是有点臃肿.而且GridView 结构的标记是固定的—它包含一个带有和的HTML 标记.

为了在显示多条记录时,有更好的自定义功能,ASP.NET 2.0提供了DataList 和Repeater (ASP.NET 1.x版本里也有 ).DataList 和Repeater 使用模板来显示内容,而不是象在GridView里那样使用BoundFields, CheckBoxFields, ButtonFields等.DataList 的标记语言为HTML

, 不过它允许每一行显示多条记录.另一方面,Repeater不会生成多余的标记语言,因此如果你想精确控制标记语言的生成,它是最理想的选择.

在后面的若干章教程里,我们将从使用DataList 和Repeater 的模板显示数据开始,来学习它们的最基本的用法.我们将学习如何控制这些控件的格式,如何在DataList里改变数据的布局,最常见的主/从场景,编辑和删除数据的方法,以及如何分页等. 第一步 1: 添加DataList 和Repeater 教程页

在开始本篇教程前,我们首先花点时间来创建一些页,这些页会在本篇和后面的几篇教程里用到.先添加一个名为DataListRepeaterBasics的文件夹,然后,添加下面的页,添加页的时候确保每页都选择了 Site.master作为母板页:

Default.aspx Basics.aspx Formatting.aspx

RepeatColumnAndDirection.aspx NestedControls.aspx

1

图 1: 创建 DataListRepeaterBasics 文件夹 和添加页 打开Default.aspx页的设计视图,从UserControls文件夹将

SectionLevelTutorialListing.ascx用户控件拖进来.这个用户控件提供的功能就是列出教程章节.我们在母板页和站点导航里创建的它.

2

图 2: 添加SectionLevelTutorialListing.ascx 用户控件到Default.aspx

最后,将这些页的地址加到 Web.sitemap 的条目里.在Paging and Sorting 之后添加下面的标记. XML

title=\

description=\ url=\

description=\Repeater controls.\

url=\/>

description=\DataList and Repeater's templates.\

url=\

3

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4