ASP.NET编程时遇到GridView的一个问题:激发了未处理的事件"PageIndexChanging"
今天在写代码的时候遇到一个很郁闷的问题,就是在ASP.NET中通过编程创建SqlDataSource然后绑定给GridView,在启用了 GridView自身的分页功能之后,点击分页页码会出现错误提示:GridView“GridView1”激发了未处理的事件"PageIndexChanging"……
苦苦研究了一下午问题之所在以后,终于从网上的一些资料找到了答案,原因应该是手动编程的数据源在ViewState中没有保持的问题,一旦引起 PostBack,数据源的内容就丢失了,那么解决办法就是在GridView的"PageIndexChanging"的事件中指定新页码然后重新进行数据源的绑定。
代码如下:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
/* ----- 重写一遍先前绑定数据源的代码 ----- */
}