我这有个索引越界问题比较麻烦,发生情况如下。
正常分页时没问题,但搜索条件中有一个附加条件是按正常和停用两种情况来搜索卡。
如果我搜出来的都是停用的卡,然后有两个分页,每行后面有个操作按钮,能够改变卡的状态,所以我依次点击改变状态后,原本停用的卡都正常了,应此也就不显示在当前的DataGrid中了,当第二分页的最后一个被改变时,应该转向分页1,但可能CurrentPageIndex还是等于2,所以就出现索引错误!请问有没有办法当出现错误的时候使程序知道,然后不显示这个错误,自动将CurrentPageIndex - 1呢?
PS:如果我一开始就CurrentPageIndex - 1会影响到分页的其他功能显示!
正常分页时没问题,但搜索条件中有一个附加条件是按正常和停用两种情况来搜索卡。
如果我搜出来的都是停用的卡,然后有两个分页,每行后面有个操作按钮,能够改变卡的状态,所以我依次点击改变状态后,原本停用的卡都正常了,应此也就不显示在当前的DataGrid中了,当第二分页的最后一个被改变时,应该转向分页1,但可能CurrentPageIndex还是等于2,所以就出现索引错误!请问有没有办法当出现错误的时候使程序知道,然后不显示这个错误,自动将CurrentPageIndex - 1呢?
PS:如果我一开始就CurrentPageIndex - 1会影响到分页的其他功能显示!
解决方案 »
- sql日期区间的写法 between 变量and 变量
- 都来订网络外卖订餐系统怎么安装?
- 请教下
- 在asp.net中使用插件的问题 在线等=======
- 纯 XmlHttp问题,本来好用的函数,,,早上突然不能用了~~急!!!!!!
- 用户控件的属性赋值问题?急!急!急!
- Repeater与Datalist的区别
- Excel的问题!为什么在.Net中调试时能正常运行,但在客户机上访问时出错!
- 关于DataTable的表关联查询,请教高手,比较难
- 求解:关于试用版软件license到期,想做个软件定时自动获取
- 怎样将当前时间DateTime.Now存储到一个变量中?
- 请问数据select * from "+TableName+"where"+KeyName+"="+KeyValue 有什么问题?
------说错了莫怪。
3Q
应该是每次操作一个卡后重新计算CurrentPageIndex
int iCount = 数据源行数
int IntPageSize = 页行数
CurrentPageIndex=(int)Math.Ceiling( (double)iCount /(double)IntPageSize ) -1;