我用的是 
public static DataSet SelectWork() 
   { 
      OleDbCommand cmd = new OleDbCommand("select * from Works order by work_id desc",conn);       OleDbDataAdapter adapter = new OleDbDataAdapter();         adapter.SelectCommand = cmd;       DataSet ds = new DataSet();             
      conn.Open(); 
      adapter.Fill(ds); 
      conn.Close();       return ds; 
      } 我这是样调用的: 
DataOperator.ConnectDatebase(); 
this.DataGrid1.DataSource = DataOperator.SelectWork(); 
this.DataGrid1.DataBind(); 我已经有了绑定 
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)  
   {  
      this.DataGrid1.CurrentPageIndex = e.NewPageIndex;  
      this.BindGrid();  
           }  生成时没出错,但运行时,点击下一页总是显示原来的数据,改成页数,点第2页或其它页还是显示原来的数据 
高手帮我一下吧,先谢了

解决方案 »

  1.   


    public void ChangePage(Object s , DataGridPageChangedEventArgs e)
    {
    DataGrid1.CurrentPageIndex = e.NewPageIndex;
    DataGrid1.EditItemIndex=-1;
    bind();
    }
      

  2.   

    this.BindGrid();改为:this.DataGrid1.DataSource = DataOperator.SelectWork(); 
    this.DataGrid1.DataBind(); 
      

  3.   

    to: nacreous(风舞) 
    这个public void ChangePage(Object s , DataGridPageChangedEventArgs e)
    怎么用啊
      

  4.   

    to: ChengKing(bantamweight)this.BindGrid();改为:this.DataGrid1.DataSource = DataOperator.SelectWork(); 
    this.DataGrid1.DataBind(); 还是不行
      

  5.   

    你跟踪一下调试吧,可能有多处错误,我给你说的也是其中一个BUG很难看出来,你设断点单步跟踪一下
      

  6.   

    测试一下
    private void DataGrid1_PageIndexChanged(object source,DataGridPageChangedEventArgs e) 
    事件执行了没有,比如在里面加一句Response.Write()之类的
      

  7.   

    首先定义一下这个
    public void DataGrid_PageChanged(Object sender,DataGridPageChanged EventArgs e)
    {
    UserGrid.CurrentPageIndexBindGrid()=e.NewPageIndex;
    }
     在DataGrid 定义里加上
    OnPageIndexChanged="DataGrid_PageChanged";
    这样就可以正常分页 了如果还有不明白发E_mail:[email protected]
      

  8.   

    Page_Load()
    {
       if(!IsPostBack)
       {
          this.BindGrid();    
       }
    }
      

  9.   

    InitializeComponent()中加上: 
    this.DataGrid1.PageIndexChanged+= new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged); 结贴了,原来是没加上这一句,不过很奇怪,这一句怎么没有自动生成呢?