无效的 CurrentPageIndex 值。它必须大于等于 0 且小于 PageCount
分页事件没有绑定的时候,搜索功能很正常这是搜索功能代码
private void Button1_Click(object sender, System.EventArgs e)
{
string str1=TextBox1.Text;
string sql1="select * from shipin where (title like '%"+str1+"%')";
DataSet ds=Db.selectDS(sql1);
DataGrid1.DataSource=ds;
DataGrid1.DataBind();
}
但是加了一个分页事件绑定之后,第一页还很正常,就是跳到第二页的时候出现
无效的 CurrentPageIndex 值。它必须大于等于 0 且小于 PageCount。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Web.HttpException: 无效的 CurrentPageIndex 值。它必须大于等于 0 且小于 PageCount。
源错误:
行 109: DataSet ds=Db.selectDS(sql1);
行 110: DataGrid1.DataSource=ds;
行 111: DataGrid1.DataBind();
行 112:
行 113:
那位高手提示一下,谢谢了
--------------------编程问答-------------------- DataGrid1.DataSource=ds.table[0]; --------------------编程问答-------------------- CurrentPageIndex 没有赋值 --------------------编程问答-------------------- 还是不行,不过还是谢谢你了 --------------------编程问答-------------------- 具体解决方法啊 --------------------编程问答-------------------- 跟踪一下点第二页时pageindex的值 --------------------编程问答-------------------- 不用看了。
肯定是在分页事件时候改变了CurrentPageIndex值。然后重新绑定数据的时候没有更改这个值。而重新绑定的数据又没有那么多页。
每次重新绑定值之后,把CurrentPageIndex重新置为0就好了。 --------------------编程问答-------------------- int page1=this.DataGrid1.CurrentPageIndex;
int page2 =this.DataGrid1.PageCount;
page1=1,
page2=2
就是想不懂,何来的无效的 CurrentPageIndex 值,它必须大于等于 0 且小于 PageCount。
我都晕了 --------------------编程问答-------------------- 这是我测试的第二页的时候出现的情况 --------------------编程问答-------------------- 搜索按钮绑定数据源的时候。
把CurrentPageIndex=0 --------------------编程问答-------------------- 谢谢了,果然如你所说,真的很谢谢 --------------------编程问答-------------------- 呵呵,结贴吧。
补充:.NET技术 , C#