DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("p1", typeof(string)));
dt.Columns.Add(new DataColumn("p2", typeof(string)));
dt.Columns.Add(new DataColumn("p3", typeof(string))); int i=0,j=0;
string SQL_GetInfos = "......";
OleDbDataReader InfosReader = List.GetList(SQL_GetInfos);
for(i=0;i<List.GetCount(SQL_GetInfos);i++)
{
dr    = dt.NewRow();
for(j=0;j<2;j++)
{
if( InfosReader.Read()) 
{
dr[j] = "+InfosReader["name"].ToString().Trim()+";
}
}
dt.Rows.Add(dr);
}



InfosReader.Close();
MyDataGrid.DataSource  = new DataView(dt);
MyDataGrid.DataBind();翻页重定位!!
MyDataGrid.CurrentPageIndex = e.NewPageIndex;
MyDataGrid.DataBind();问题:分页正常,第一页显示正常,问题在 后面的页---里面显示 为空白!!!

解决方案 »

  1.   

    MyDataGrid.CurrentPageIndex = e.NewPageIndex;
    MyDataGrid.DataBind();
    这句有问题吧.记得好像要重新BindData
      

  2.   

    嘿嘿,问题找到了。
    for(i=0;i<List.GetCount(SQL_GetInfos);i++)???List.GetCount(SQL_GetInfos)//为记录条数应该用:
    (int)Math.Ceiling( List.GetCount(SQL_GetInfos) * 1.0 /2)
    取行数!正确:
    for(i=0;i<(int)Math.Ceiling( List.GetCount(SQL_GetInfos) * 1.0 /2);i++)
    谢谢啊
      

  3.   

    你这种问题就是绑定的时候出现的!
    首先要理解页面的运行机制!
    Page_Load()里面你是怎么写的?
      

  4.   

    翻页重定位!!
    MyDataGrid.CurrentPageIndex = e.NewPageIndex;
    MyDataGrid.DataBind();