GridView 对比HTML 表格 (ASP.net 2.0)

Posted

技术标签:

【中文标题】GridView 对比HTML 表格 (ASP.net 2.0)【英文标题】:GridView Vs. HTML Table (ASP.net 2.0) 【发布时间】:2010-09-29 22:10:43 【问题描述】:

为了完全控制您的应用程序,您更喜欢 GridView 还是 html 表格? 为什么?

例如,我需要在 GridView/HTML 表中为每行创建动态超链接。哪个对象更容易添加该功能(或其他类似的功能)?

注意:我正在以编程方式创建我的数据集

【问题讨论】:

【参考方案1】:

如果您不需要对排序或分页的内置支持,并且想要对呈现的输出进行更多控制,那么我会考虑使用 Repeater 控件来输出表格。如果您需要内置的排序/分页功能,那么 GridView 会很有帮助。

如果您想要两全其美,请升级到 ASP.net 3.5 并使用 ListView。

编辑:你能澄清一下'on-the-fly hyperlinks-per-row'是什么意思吗?

【讨论】:

'on-the-fly hyperlinks-per-row'= 在某些单元格中创建一些超链接【参考方案2】:

如果您不需要排序和/或分页,我认为可以使用 Repeater 或更新的 ListView。 Repeater 和 ListView 允许您控制 HTML(在这方面 GridView 是一个完全黑匣子,并生成残暴的 HTML),同时避免 <asp:Table> 控件附带的繁琐的服务器端代码:“好的,新行。新单元格。对单元格做一些事情。将单元格添加到行。将行添加到表格。重复“。

另一方面,如果您需要分页和排序,GridView 可能是更好的解决方案。

【讨论】:

【参考方案3】:

您可以使用 GridView 或更简单的类似中继器的控件来构建您自己的 html,即使您必须对数据进行排序/分页。 以中继器为例,您可以使用 PagedDataSource 数据源构建自定义分页系统,其中 AllowPaging 属性设置为 true

唯一的问题显然是,对于一个简单的中继器,您必须编写更多代码来完成 GridView 本身所做的工作。

但结果更快

【讨论】:

【参考方案4】:

远离 Gridview。它必须拉下整个数据集以呈现分页。仅呈现您需要的行(例如,6,0000 行中的第 30 - 40 行)并使用单独的寻呼机控件要快得多。 此外,当涉及到 HTML/CSS 时,使用中继器或列表视图将更容易调试,因为您将完全控制代码。

【讨论】:

三年后,这个答案终于得到了赞成。万岁长尾巴!【参考方案5】:

由 Response.Write 生成的纯 HTML

非常简单,并且具有额外的好处,即如果您曾经在非 Microsoft 系统上工作,如果没有多余的 ASP.NET Web 控件,您将不会感到赤身裸体,这些控件大多只是使生成每个人都知道的 HTML 变得更加困难。

【讨论】:

以上是关于GridView 对比HTML 表格 (ASP.net 2.0)的主要内容,如果未能解决你的问题,请参考以下文章

GridView(网格视图)的使用

vs里gridview控件创建的数据库表格怎么居中

Gridview表格控件

ASP.NET和ASP.NETCore多环境配置对比

C#-WebForm-GridView表格展示数据

如何在Gridview内的表格单元格中找到对文本框的控制