我用DataGrid来显示数据,并用了它自己的分页功能,在该页面上还做有查询的功能,如果不点查询按钮,点分页时很正常第一页、第二页没有出错,可是如果按某个条件查出结果,再去点分页点时,DataGrid里的数据就变成了没有点查询按钮时的数据了(也就是说数据增多了),请问这是怎么回事?

解决方案 »

  1.   

    查找前和查找后datagrid 绑定的数据源(表或视图)名应该不能相同.
      

  2.   

    索引改变了。你新建个datagird来显示查询的结果/把新建的visible设为false.当点击查询时visible变为true.这样就可以了/
      

  3.   

    显然你分页的时候没有重新查询。请说明你是如何查询的?你的查询必须作为状态保存在ViewState中,并且之后任何绑定动作都要进行查询。要仔细看看逻辑是否有漏洞。
      

  4.   

    谢谢楼上的兄弟们
    我在点查询按钮时设置了ViewState["doSearch"]=true;
    在绑定BindGrid函数里写了
    if(ViewState["doSearch"]==null)
    {
        所有记录数据;
    }
    else
    {
        查询结果数据;
    }
    不知道为什么查询分页还出现那样的错误?