从对象层次图可以看出,Repeater是最轻最小的控件,它仅仅继承了基本控件的功能,包括ID属性、子控件集合等。另一方面,DataList和DataGrid则继承了WebControl功能,包括样式和外观属性。
      从对象模型看,repeater是最简单的控件,它也是最小的数据绑定控件,它没有外观,也不表现为任何特定的用户界面。Repeater也支持模板。但它不支持内建的样式和外观属性。如果你需要完全控制页面,用repeater是一个最合适的选择。
      DataList具有repeater的功能,并支持外观控制。它继承了WebControl的外观特性,并增加了一些样式属性,以控制其子控件的外观。DataList也支持对项目的标准操作,比如选择、编辑、删除。当需要产生横向或纵向的一系列项目时,采用DataList是最合适的。
      GridView控件实现了表格样式的列和行。和DataList类似,它也支持外观和样式控制。除了支持对项目的选择、编辑等操作,GridView还支持对整个集合的操作,包括分页、排序等等。GridView和DataList的最大不同在于,GridView不包含任何模板属性,这意味着项目或者表格的行不是模板化的。但是,通过加入TemplateColumn到某个列,你可以在列上使用模板。
      下表概括了列表控件的主要功能:

同时我们也不能忘了.NET 3.5中给我们提供的新数据绑定控件ListView和DataPager,ListView就是DataGrid和 Repeater的结合体,它既有Repeater控件的开放式模板,又具有DataGrid控件的编辑特性。这绝对是一个可以引起你兴趣的好东东,因为它给你提供了比DataGird丰富得多的布局手段,同时又具有DataGrid的所有特性。 ListView控件本身并不提供分页功能,但是我们可以通过另一个控件 – DataPager来实现分页的特性。把分页的特性单独放到另一个控件里,会给我们带来很多好处,比如说可以让别的控件使用它,又比如说我们可以把它放在页面的任何地方。实质上,DataPager就是一个扩展ListView分页功能的控件。
微软给我们开发提供了这么多好用的控件,我们没有理由不用他们,当然我们应该合理适当的使用这些控件。如果只是罗别出来一个简单的显示数据,出一对性能的考虑,repeater必然是首选。如果需要对数据进行操作,DataList(首选)和GridView都可以。
当然,ListView和DataPager的组合必将是开发中的黄金组合,无论从性能上和功能实现上都是很棒的控件。

最新文章

  1. JavaScript 属性类型(数据属性和访问器属性)
  2. Modbus RTU程序开发解读
  3. [IOS 开发] 懒加载 (延迟加载) 的基本方式,好处,代码示例
  4. mysql数据导出excel格式+乱码解决
  5. sql 行转 列, 列转行
  6. centos 7.0 安装
  7. 利用call与apply向函数传递参数
  8. jQuery 选择器 (基础恶补之二)
  9. ASP.NET调用Web Service
  10. css“变形”效果
  11. 《University Calculus》-chape6-定积分的应用-求体积
  12. SendMessage API
  13. ZOJ 1301 The New Villa (BFS + 状态压缩)
  14. Linux下部署Symfony2对app/cache和app/logs目录的权限设置
  15. 一个数据表对象(NSManagedObject)加入排序
  16. cocos2dx 3.1.1移植安卓apk (lua交叉编译器项目 mac环境)
  17. web项目从域名申请到发布
  18. 开头不讲"Hello Word",读尽诗书也枉然 : Word 操作组件介绍 - Spire.Doc (转)
  19. [MicroPython]TurniBit开发板旋转按钮控制脱机摆动
  20. Oracle 11g数据库详细安装过程

热门文章

  1. JPA的API介绍、工具类抽取
  2. 解释mysql 语句
  3. RobHess的SIFT代码解析步骤二
  4. Flutter——Column组件(垂直布局组件)
  5. python函数大全
  6. Tomcat conf/server.xml 配置项详解
  7. linux—-远程连接——管理工具
  8. 4'.deploy.prototxt
  9. 说一下 HashSet 的实现原理?(未完成)
  10. java线程基础巩固---采用多线程方式模拟银行排队叫号以及Runnable接口存在的必要性