首页 / 知识

ASP.NET中的DataGrid和GridView之间的区别?

2023-04-11 19:07:00

ASP.NET中的DataGrid和GridView之间的区别?

The Difference Between a DataGrid and a GridView in ASP.NET?

我已经进行了一段时间的ASP.NET开发,并且之前在各种事情上都使用了GridView和DataGrid控件,但是我从来没有找到一个很好的理由来使用它们。 我想知道:

这两个ASP.NET控件之间有什么区别? 两者的优缺点是什么? 一个更快吗? 较新? 易于维护?

控件的智能感知摘要似乎并未描述两者之间的任何区别。 他们都可以查看,编辑和排序数据,并在运行时自动生成列。

编辑:Visual Studio 2008不再将DataGrid列为工具箱中的可用控件。 如果您手动输入,它仍然可用(我认为是对旧有支持)。


DataGrid是一个ASP.NET 1.1控件,仍受支持。 GridView出现在2.0中,使某些任务变得更加简单,并添加了不同的数据绑定功能:

此链接比较了DataGrid和GridView功能-

https://msdn.microsoft.com/zh-CN/library/05yye6k9(v=vs.100).aspx


GridView控件是DataGrid控件的后继。像DataGrid控件一样,GridView控件被设计为在HTML表中显示数据。当绑定到数据源时,DataGridGridView控件分别将DataSource中的一行显示为输出表中的一行。

DataGridGridView控件均从WebControl类派生。尽管它具有与DataGrid控件相似的对象模型,但GridView控件相对于DataGrid控件还具有许多新功能和优点,包括:

  • 丰富的设计时功能。
  • 改进的数据源绑定功能。
  • 自动处理排序,分页,更新和删除。
  • 其他列类型和设计时列操作。
  • 具有PagerTemplate属性的自定义寻呼机用户界面(UI)。

GridView控件和DataGrid控件之间的差异包括:

  • 不同的自定义分页支持。
  • 不同的事件模型。

使用DataGrid控件时,数据的排序,分页和就地编辑需要其他编码。 GridView控件使您可以添加排序,分页和编辑功能,而无需编写任何代码。相反,您可以通过在控件上设置属性来自动执行这些任务以及其他常见任务,例如将数据绑定到数据源。


DataGrid最初是在.NET 1.0中。 NET2.0中引入了GridView(并取代了DataGrid)。它们提供几乎相同的功能。


如果您使用的是Visual Studio 2008 / .NET 3.5,则可能不应使用其中任何一个。使用ListView-它为您提供GridView的功能以及中继器的样式灵活性。


数据网格

  • DataGridAsp.Net 1.0一起引入。
  • 为了进行排序,我们需要处理SortCommand event并重新绑定网格
    必需,对于分页,我们需要处理PageIndexChanged event
    并重新绑定网格。
  • 需要编写代码来实现更新和删除操作。
  • 不支持自动格式或样式功能。
  • GridView相比,性能更快。
  • 网格视图

  • GridView是Asp.Net 2.0引入的。
  • Paging and Sorting的内置支持。
  • Update and Delete operations的内置支持。
  • 支持自动格式或样式功能。
  • DataGrid相比,性能较慢。
  • eventsproperties(如Item)已更改为Row

    例如,

    • ItemCommand - RowCommand

    • ItemDataBound - RowDataBound

    • e.Item.ItemType - e.Row.RowType


    安全性方面的一个关键区别是,DataGrid使用的BoundColumn不会对绑定的数据进行HtmlEncode。没有属性可以打开或关闭HtmlEncoding,因此您需要以某种方式在代码中进行操作。

    GridView使用BoundField,它默认情况下对绑定数据执行HtmlEncode,并且如果需要将其关闭,则具有HtmlEncode属性。


    关键区别在于ViewState管理IIRC。 DataGrid需要打开ViewState才能具有编辑和排序功能。


    区别之一是HTML输出。数据网格将为标头输出TD,而网格视图将输出TH。这可能会导致显示中的直观变化。


    网格视图和详细信息视图之间的一些基本区别

    与DataGrid控件相比,GridView控件还具有许多新功能和优势,其中包括:

    ·丰富的设计时功能。
    ·改进的数据源绑定功能。
    ·自动处理排序,分页,更新和删除。
    ·其他列类型和设计时列操作。
    ·具有PagerTemplate属性的自定义寻呼机用户界面(UI)。

    GridView控件和DataGrid控件之间的差异包括:
    ·不同的自定义分页支持。
    ·不同的事件模型。


    控件上都区别之间

    最新内容

    相关内容

    热门文章

    推荐文章

    标签云

    猜你喜欢