选择合适的数据控件

原创 2005年05月24日 12:28:00

        DataGrid,DataList,Repeater是我们最常使用的表格化数据显示控件。在它们之间你是不是曾经不知道该怎么选择呢?怎样才能选择到最适合的控件呢?看了以下的内容你大概就会明白了 
        这三个控件大家肯定都非常的熟悉了,我们直接看看它们该在什么场合使用,有什么区别吧。  
        
        如果你想要快速、简单的开发:                          选择DataGrid
        如果你想要轻量级的、只读的表格化显示:      选择Repeater
        如果你想要小巧的、快速的解决方案:              选择Repeater(最快)选择
DataList(比较快) 
        
如果你想要自定义模板的显示:                          选择Repeater     选择DataList
        如果你想要能选择一行并编辑:                          选择DataGrid     选择DataList
        如果你想要能够排序和自动分页的显示:          选择DataGrid 

      3个控件的比较:

特性

Repeater control

DataList control

DataGrid control

默认显示

None (模板控制)

Table

Table

自动根据数据源建立列

No

No

Yes

自定义表格头

Yes

Yes

Yes

自定义行

Yes

Yes

Yes

自定义交互的行

Yes

Yes

Yes

自定义分隔行

Yes

Yes

No

自定义表格脚

Yes

Yes

Yes

支持分页

No

No

Yes

支持排序

No

No

Yes

支持修改内容

No

Yes

Yes

支持选择单行

No

Yes

Yes

支持选择多行

No

No

No

支持水平和垂直的排序方式

No

Yes

No



   通过以上的介绍我相信大家都知道的该怎么选择这3个数据控件了吧^_^

   谈到这里让我再来说说数据绑定的问题。在看过了 JGTM'2003的 《  ASP.NET中的数据绑定:哪个更快? 》后特别指出:


       除非要用到多表的关系、排序、过滤等功能,一般的查看推荐使用DataReader

      非必要,不要用DataBinder.Eval,应该用((DataRowView)(Container.DataItem))["列名"]/[列索引]的方式来
   访问数据,但使用这种方法,必须在ASPX页面顶部
   加入

<%@ Import Namespace="System.Data.Common" %>

   例:

<%#((DataRowView)(Container.DataItem))["bbs_title"]%>
<%#((DataRowView)(Container.DataItem))[0]%>  //效率高些

   如果要格式化:

<%#string.Format("{0:c}",((DataRowView)(Container.DataItem))[0])%>

 

   要是DataReader绑定的话:

<%#((DbDataRecord)Container.DataItem)[0]%>


   由于本人水平有限,很多不足的地方希望各位大哥多多指教^_^
   
   参考:《ASP.NET    Cookbook》

特性

Repeater control

DataList control

DataGrid control

默认显示

None (模板控制)

Table

Table

自动根据数据源建立列

No

No

Yes

自定义表格头

Yes

Yes

Yes

自定义行

Yes

Yes

Yes

自定义交互的行

Yes

Yes

Yes

自定义分隔行

Yes

Yes

No

自定义表格脚

Yes

Yes

Yes

支持分页

No

No

Yes

支持排序

No

No

Yes

支持修改内容

No

Yes

Yes

支持选择单行

No

Yes

Yes

支持选择多行

No

No

No

支持水平和垂直的排序方式

No

Yes

No



   通过以上的介绍我相信大家都知道的该怎么选择这3个数据控件了吧^_^

   谈到这里让我再来说说数据绑定的问题。在看过了 JGTM'2003的 《  ASP.NET中的数据绑定:哪个更快? 》后特别指出:


       除非要用到多表的关系、排序、过滤等功能,一般的查看推荐使用DataReader

      非必要,不要用DataBinder.Eval,应该用((DataRowView)(Container.DataItem))["列名"]/[列索引]的方式来
   访问数据,但使用这种方法,必须在ASPX页面顶部
   加入

<%@ Import Namespace="System.Data.Common" %>

   例:

<%#((DataRowView)(Container.DataItem))["bbs_title"]%>
<%#((DataRowView)(Container.DataItem))[0]%>  //效率高些

   如果要格式化:

<%#string.Format("{0:c}",((DataRowView)(Container.DataItem))[0])%>

 

   要是DataReader绑定的话:

<%#((DbDataRecord)Container.DataItem)[0]%>


   由于本人水平有限,很多不足的地方希望各位大哥多多指教^_^
   
   参考:《ASP.NET    Cookbook》

      非必要,不要用DataBinder.Eval,应该用((DataRowView)(Container.DataItem))["列名"]/[列索引]的方式来
   访问数据,但使用这种方法,必须在ASPX页面顶部
   加入

<%@ Import Namespace="System.Data.Common" %>

   例:

<%#((DataRowView)(Container.DataItem))["bbs_title"]%>
<%#((DataRowView)(Container.DataItem))[0]%>  //效率高些

   如果要格式化:

<%#string.Format("{0:c}",((DataRowView)(Container.DataItem))[0])%>

 

   要是DataReader绑定的话:

<%#((DbDataRecord)Container.DataItem)[0]%>


   由于本人水平有限,很多不足的地方希望各位大哥多多指教^_^
   
   参考:《ASP.NET    Cookbook》

选择合适的数据控件

        DataGrid,DataList,Repeater是我们最常使用的表格化数据显示控件。在它们之间你是不是曾经不知道该怎么选择呢?怎样才能选择到最适合的控件呢?看了以下的内容你大概就会...
  • CQP
  • CQP
  • 2006年08月10日 15:35
  • 780

ASP.Net 数据绑定之-----选择合适的数据控件

DataGrid,DataList,Repeater是我们最常使用的表格化数据显示控件。在它们之间你是不是曾经不知道该怎么选择呢?怎样才能选择到最适合的控件呢?看了以下的内容你大概就会明白了     ...
  • mingzhecode
  • mingzhecode
  • 2008年03月05日 09:43
  • 353

asp.net各种数据控件汇总

.master代码如下: 数据控件演示 GridView演示 ...
  • yayun0516
  • yayun0516
  • 2014年12月07日 11:10
  • 1038

MySQL如何选择合适的存储引擎

在选择存储引擎时,应根据应用特点选择合适的存储引擎。对于复杂的应用系统,还可以根据实际情况选择多种存储引擎进行结合。下面是几种常用存储引擎的适用环境。MyISAN: 如果应用是以读操作和插入操作为主,...
  • Jessica__sun
  • Jessica__sun
  • 2017年05月21日 18:38
  • 336

Mysql 选择合适的数据类型

Mysql 选择合适的数据类型
  • a600423444
  • a600423444
  • 2010年12月01日 22:13
  • 919

作业:选择某种Map集合保存学号

选择某种Map集合保存学号从1到15的学员的学号(键)和姓名(值),学号用字符串表示,输入的时候要以学号乱序的方式存入Map集合,然后按照学号从大到小的顺序将Map集合中的元素输出打印。需要自定义Ma...
  • wmzsw
  • wmzsw
  • 2017年11月25日 17:29
  • 271

mysql选择合适的数据类型

1.char和varchar        都是用来存储字符串的,但它们保存和检索的方式不同,char是固定长度的字符类型,而varchar属于可变长度的字符类型.         由于cha...
  • fly_zhyu
  • fly_zhyu
  • 2017年06月20日 18:30
  • 146

选择合适的Map集合保存5位学员的学号和姓名,然后按学号的自然顺序的倒序将这些键值对一一打印出来

17、选择合适的Map集合保存5位学员的学号和姓名,然后按学号的自然顺序的倒序将这些键值对一一打印出来。 提示: 1)创建TreeMap集合。 2)使用put()方法将学号(“1”、“2”、“3”、“...
  • xiaoye142034
  • xiaoye142034
  • 2017年09月30日 14:07
  • 644

读书笔记-HBase in Action-第四部分-(1)部署

最后一部分了。。。分两章吧。HBase和Hadoop紧密相关,更为具体的部署和运维内容推荐HadoopOperations和HBaseAdministration Cookbook。本文粗粒度列出一...
  • cargogo
  • cargogo
  • 2014年09月22日 18:04
  • 1452

如何选择合适的算法

FROM 《机器学习实战》         必须考虑下面两个问题:一、使用机器学习算法的目的,想要算法完成何种任务,比如是预测明天下雨的概率还是对投标者按照兴趣分组;二、需要分析或收集的数据是什么。...
  • amy_diary
  • amy_diary
  • 2017年05月08日 16:30
  • 228
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:选择合适的数据控件
举报原因:
原因补充:

(最多只允许输入30个字)