• GridView、DataGrid、DataList、Repeater、ListView、DetailsView、FormView 的区别


    列表类

    GridView 控件

    GridView 控件以表的形式显示数据,并提供对列进行排序、分页、翻阅数据以及编辑或删除单个记录的功能。

    特征:一行一条记录,就像新闻列表一样;带分页功能。

    DataGrid 控件(建议用 GridView 控件代替)

    没有出现 GridView 之前,就用 DataGrid。除了添加利用数据源控件功能的新功能,GridView 控件还实现了某些改进,例如,定义多个主键字段的功能、使用绑定字段和模板的改进用户界面自定义以及用于处理或取消事件的新模型。

    DataList 控件

    DataList 控件以表的形式呈现数据,通过该控件,您可以使用不同的布局来显示数据记录,例如,将数据记录排成列或行的形式。您可以对 DataList 控件进行配置,使用户能够编辑或删除表中的记录。(DataList 控件不使用数据源控件的数据修改功能;您必须自己提供此代码。)DataList 控件与 Repeater 控件的不同之处在于:DataList 控件将项显式放在 HTML 表中,而 Repeater 控件则不然。

    特征:一行可以有多条记录,就像图片列表一样;分页功能需要手写。

    Repeater 控件

    Repeater 控件使用数据源返回的一组记录呈现只读列表。与 FormView 控件类似,Repeater 控件不指定内置布局。您可以使用模板创建 Repeater 控件的布局。

    特征:自由定制;分页功能需要手写。

    ListView 控件

    这个控件既可实现像 GridView 一样的效果,也可实现像 DataList 一样的效果(怪不得名字叫 ListView),这东西应用起来也要复杂些。要点是:LayoutTemplate 下面必须有一个服务器端控件,即 runat="server",其 ID 必须为 itemPlaceholder(除非更改 ListView 的 ItemPlaceholderID),注意大小写,ItemTemplate 模板中的内容输出时就是插入到 itemPlaceholder 的。

    但 ListView 分页却不是那么复杂,在 LayoutTemplate 模板中拖入一个 DataPager 控件,指定好 DataPager 的 Fields 就可以了。但 DataPager 并不会向 DataSource 发送 startRowIndex 和 maximumRows 这两个参数,也就是说这种分页是取出所有的记录,只是显示部分,并不是一种高效的分页。请参见:声明式数据绑定教程-ObjectDataSource

    特征:自由定制,功能强大;应用复杂;分页功能需要手写。

    详细类

    DetailsView 控件

    DetailsView 控件一次呈现一条表格形式的记录,并提供翻阅多条记录以及插入、更新和删除记录的功能。DetailsView 控件通常用在主/详细信息方案中,在这种方案中,主控件(如 GridView 控件)中的所选记录决定了 DetailsView 控件显示的记录。

    特征:一条记录,一行一个字段;带分页功能。

    FormView 控件

    FormView 控件与 DetailsView 控件类似,它一次呈现数据源中的一条记录,并提供翻阅多条记录以及插入、更新和删除记录的功能。不过,FormView 控件与 DetailsView 控件之间的差别在于:DetailsView 控件使用基于表格的布局,在这种布局中,数据记录的每个字段都显示为控件中的一行;而 FormView 控件则不指定用于显示记录的预定义布局。实际上,您将创建包含控件的模板,以显示记录中的各个字段。该模板包含用于设置窗体布局的格式、控件和绑定表达式。

    特征:一条记录,自由定制;带分页功能。

  • 相关阅读:
    性能测试指标
    性能优化——存储性能优化
    装背包 --- 深度优先搜索时间复杂度 ... 线性搜索
    深度优先搜索之偏爱时间复杂度
    Oh,mygoddess
    优先队列 + 并查集 + 字典树 + 欧拉回路 + 树状数组 + 线段树 + 线段树点更新 + KMP +AC自动机 + 扫描线
    Nightmare --- 炸弹时间复位
    3Ddungeon-------三维搜索-----偷个懒 把 亡命逃窜 的代码修改了一下 拿来用了
    迷宫寻宝(一) ---- 状态压缩
    NYOJ999 师傅又被妖怪抓走了
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/2293722.html
Copyright © 2020-2023  润新知