删除时
if(DataGrid1.Items.Count == 1)
if(DataGrid1.CurrentPageIndex > 0)
                    DataGrid1.CurrentPageIndex = DataGrid1.CurrentPageIndex = 0;

解决方案 »

  1.   

    private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
    {                                                             int iMaxPage=datatable.Rows.Count/this.DataGrid1.PageSize;
    int i=datatable.Rows.Count%this.DataGrid1.PageSize;
    if(i!=0)
    {
    iMaxPage++;
    }
    if(iMaxPage-1<e.NewPageIndex)
    {
    this.DataGrid1.CurrentPageIndex=iMaxPage-1;
    }
    else
    {
    this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
    }
    this.DataGrid1.DataSource=datatable;
    this.DataGrid1.DataBind();
    }
      

  2.   

    多谢,我自己研究出来了~~试了试感觉还行
    If DataGrid1.Items.Count = 1 And DataGrid1.CurrentPageIndex > 0 Then
                DataGrid1.CurrentPageIndex = DataGrid1.CurrentPageIndex - 1
            End If