如何在每1分钟的网格视图中使用代码后面的下一页编号

时间:2013-11-12 02:13:17

标签: c# asp.net gridview

我尝试每1分钟用计时器刷新页面,并在下一页的gridview中显示数据,直到最后一条记录。 我该怎么办?

protect void Timer1_Tick(object sender, EventArgs e)
{ 
   if(GridView1.PageIndex==GridView.PageCount)
   {
      GridView1.PageIndex=1;
   } 
   else 
   {  int pageno = GridView1.PageIndex+1; 
      GridView1.PageIndex=pageno;
   } 
   GridView1.DataBind(); Timer1.Interval=600000;
}

1 个答案:

答案 0 :(得分:3)

PageIndex是从零开始的索引,PageCount是通过将数据源中的记录总数除以页面中显示的记录数(由PageSize属性指定)和四舍五入。

所以PageIndex永远不会等于PageCount

if(GridView1.PageIndex == (GridView1.PageCount -1))
{
   GridView1.PageIndex = 0;
}
else
{
   GridView1.PageIndex = GridView1.PageIndex + 1;
}
GridView1.DataBind();

您可以使用Ajax Update面板并将网格放在面板中。然后,您可以在设置为OnTick的{​​{1}} Timer事件中使用上面的代码,请查看以下SO问题,例如

Timer in UpdatePanel