分享:用PreRender解决DataGrid分页最后一页行数不满的排版问题

原创 2005年04月27日 09:53:00

DataGrid如果使用分页,最后一页可能不能“满页”,这样DataGrid的排版可能会出现问题,剩下的行每行太宽,整个DataGrid变得难看。

解决方法大概可以从三个地方考虑:
1、在DataSource中填上新数据行。
2、在DataGrid中填上新空白控件行。
3、在webpage中用javascript填上新的html控件行。

我采用的是第二种方法,在datagrid的prerender事件的响应方法中,在footer行之上填入空白行,代码如下:

protected virtual void SpiderSurfGrid_PreRender(object sender, System.EventArgs e)
{
  DataGridItem dgi;
  System.Web.UI.WebControls.TableCell tablecell;
  System.Web.UI.WebControls.TableRow tablerow;
  DataGrid grid = (sender as DataGrid);
  if(grid.Controls.Count == 0) return;
  System.Web.UI.WebControls.Table table = (grid.Controls[0] as System.Web.UI.WebControls.Table);
  tablerow = (System.Web.UI.WebControls.TableRow)(table.Controls[1]);

  for(int j=this.PageSize+4-table.Controls.Count;j>0;j--)
  {
    dgi = new DataGridItem(0,0,ListItemType.Item);
    for(int i=0;i<tablerow.Controls.Count;i++)
    {
      tablecell = new System.Web.UI.WebControls.TableCell();
      dgi.Cells.Add(tablecell);
    }
    table.Controls.AddAt(table.Controls.Count-2,dgi);
  }
}

说明:这里考虑的是一个有header/footer/pager行,pager在下的,绑定的datagrid。

比较奇怪的是,无法在这里给一行加上cssstyle,一旦我dgi.cssstyle="dumpTableRowClass";这些新加入的行就塌缩了,有成功的朋友请指点一下,谢谢。

athossmth原创,转载请注明。

在分页后web报表的最后一页补足空行的方法

几乎任何形式的文档和报表都离不开分页,报表如何分页在B/S模式的Web报表中也是个常见的问题,特别是当大数据量的Web报表需要打印输出时,不可能将所有数据打印到一张纸上,这时必然涉及到报表的分页。开发...

GridView分页(第一页、上一页、下一页、最后页、当前页数/总页数)

前台GridView页脚代码: PagerTemplate>                                                                  ...

day_6 在sevlet网页程序中显示图片、数据库表格,居中排版,分页算法以及上一页下一页

在之前编写的servlet文件下进行gai'j

解决几百万条以上数据分页让人蛋疼的 SQL2005, SQL2008最后一页卡死,最后一页查询超时的源码

转载:http://www.cnblogs.com/jirigala/archive/2012/03/08/2385895.html 应该很多人也遇到过这个问题,大概在2年前我也遇到过标题中的问题,...
  • asciil
  • asciil
  • 2012年05月16日 11:30
  • 1465

为什么每次上滑分页后只显示最后一页呢?上一页就不显示了,应该是追加的

public class DropDownListViewDemo extends Activity { private List story_entrys = null; private D...

jquery分页插件jquery.tablesorter.pager.js,点击下一页跳到后两页问题

如题,最近用jquery的分页插件的时候,点击下一页结果跳了两页,分析了下,应该只是在动态生成表格里的数据的时候会出现这样的情况。而且每动态生成一次数据,就会多跳转一页,如此累加。所以分页插件对nex...

利用Prerender.io解决Angular页面SEO问题

AngularJs作为今年较为流行的主流框架之一,在开发单页应用上有着高效便捷的特点,但由于Ajax页面在SEO方面并不不友好,这让很多开发者很是烦恼,在开发我的博客的时候我也考虑到了这个问题,经过多...

Hibernate HQL分页时下一页和本页数据重复的解决

http://blog.csdn.net/polohoho1/article/details/9283957
  • bbc2005
  • bbc2005
  • 2016年11月25日 13:03
  • 1445

解决JPages分页插件,点击下一页不会自动回到顶部的bug

最近在做一个手机端的失物招领系统,用到了JPages这个分页插件。 先简单介绍一下JPages: jPages是一个客户端分页插件,它比其他大多数插件多了很多功能,比如自动翻页,滚动浏览,显示延...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:分享:用PreRender解决DataGrid分页最后一页行数不满的排版问题
举报原因:
原因补充:

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