【问题标题】:Render gridview as <div> instead of table将 gridview 渲染为 <div> 而不是 table
【发布时间】:2011-09-28 13:36:42
【问题描述】:

我正在寻找一些代码 sn-p 它将把网格视图呈现到&lt;div&gt; 而不是桌子。
任何人都可以帮助我吗?

我需要像我所附的那样绘制一个图形,并且需要一些功能,例如用鼠标选择图形区域并提供复制粘贴操作。

【问题讨论】:

  • 为什么? &lt;table&gt; 有什么问题?
  • 如果您向我们解释这样做的目的,我们将能够为您提供更好的帮助。干杯
  • 我认为这是不可能的,因为GridView 旨在显示表格数据。如果您想以自己的方式展示内容,您还必须使用自己的控件或仅使用 Literal 并自己构建原始 HTML。

标签: jquery html css gridview


【解决方案1】:

我认为您应该使用随 DotNet 框架 3.5 引入的 ListView 控件

ListView 是一个模板驱动的控件,这意味着它默认不会呈现任何内容。默认情况下,开发者必须以模板的形式完整地指定他/她想要呈现的 HTML(应该指定应该在 LayoutTemplate 中呈现的 HTML)。

查看下面的代码项目 url 以获取实现细节..

http://www.codeproject.com/KB/webforms/CompleteListView.aspx

另请参考以下msdn视频,

http://www.asp.net/aspnet-35/videos/the-listview-control

更新:由于您的项目使用的是 DotNet Framework 2.0,因此您应该使用 Repeater 服务器控件来实现这一点

Repeater 控件没有内置布局或样式;您必须在控件的模板中显式声明所有 HTML 布局、格式和样式标记。

但是分页、排序等使用Repeater会有点困难。 ListView 是Repeater 的更新版本,也具有上述功能..

希望对你有所帮助..

【讨论】:

  • 项目在DotNet 2.0。
  • @gvLearner,那么你应该选择一个中继器控件。看看我已经更新了我的答案。
【解决方案2】:

您可以创建继承自 GridView 的 CustomGridView,并且在那里,您可以重写 Render 方法以循环遍历行并生成您想要的任何类型的 HTML。但最好的方法是像@Harun 所说的那样使用 ListView。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-04
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-03
    • 2014-07-18
    • 2013-02-01
    相关资源
    最近更新 更多