datagrid绑定不是一个固定的表.出错提示:无效的 CurrentPageIndex 值。它必须大于等于 0 且小于 PageCount

goldcursor 2005-04-26 05:34:18
要查询全部时不考虑类别字段.用下拉列表框传递leibie变量查询具体一个类别,
当查完一个类别的数据后查别一个类别,按下一页提出出错.请帮忙!
无效的 CurrentPageIndex 值。它必须大于等于 0 且小于 PageCount


private void binddata(string sortorder)
{

SqlConnection myconnection = new SqlConnection(con);
if (leibie=="0")
mycommand="select * from 管理用户";
else
mycommand="select * from 管理用户 where (类别='"+leibie+"')";
SqlDataAdapter da=new SqlDataAdapter(mycommand,myconnection);
DataSet ds=new DataSet();
da.Fill(ds,"ll");
DataGrid1.DataSource=ds.Tables["ll"].DefaultView.Sort=sortorder;
DataGrid1.DataSource=ds.Tables["ll"].DefaultView;
DataGrid1.DataBind();


}
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{

DataGrid1.CurrentPageIndex=e.NewPageIndex ;
binddata("编号");


}
...全文
130 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hchxxzx 2005-04-26
最近关于分页的问题突然多起来了,而且都是自定义分页.
建议大家都去用 陕北吴旗娃的分页控件,性能好且稳定,使用方便,为什么不用呢?
回复
andy0618 2005-04-26
在每次绑定数据的时候都把DataGrid1.CurrentPageIndex设为0
DataGrid1.CurrentPageIndex=0
就是
如下

DataGrid1.DataSource=ds.Tables["ll"].DefaultView;
DataGrid1.DataBind();
DataGrid1.CurrentPageIndex=0

回复
rafer 2005-04-26
binddata("编号");
if (DataGrid1.PageCount>e.NewPageIndex)
DataGrid1.CurrentPageIndex=e.NewPageIndex;
else
DataGrid1.CurrentPageIndex=DataGrid1.PageCount-1;
回复
goldcursor 2005-04-26
第一个类别查询后的CurrentPageIndex 值好像还保留着值,而在第二个类别查询时就溢出了.怎么办?
回复
redhat_xu 2005-04-26
容许分页了吗?
回复
goldcursor 2005-04-26
不行啊!
回复
morefish 2005-04-26

试试:
binddata("编号");
DataGrid1.CurrentPageIndex=e.NewPageIndex ;
回复
gwallan 2005-04-26

ds.Tables["ll"].DefaultView.Sort = "'sortorder' DESC";
DataGrid1.DataSource=ds.Tables["ll"].DefaultView;
回复
相关推荐
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2005-04-26 05:34
社区公告
暂无公告