你的DataGrid 的DataBind()方法不要放在if(!Page.IsPostBack){}中,放在外面!

解决方案 »

  1.   

    将:
    if(!Page.IsPostBack)
    {
    ....
    bindDB();
    }
    改为:
    if(!Page.IsPostBack)
    {
    bindDB();
    }
      

  2.   

    到DATAGRID的属性页里查看事件,看看这个DGPageIndex_Changed事件是否丢失了,如果你用的是VS.NET开发的话,经常会出现这样丢失事件的情况
      

  3.   

    DGnews.CurrentPageIndex = e.NewPageIndex;
    bindDB();
    应该改为: DGnews.CurrentPageIndex=e.NewPageIndex;
    DGnews.DataBind();
      

  4.   

    public void DGPageIndex_Changed(Object sender, DataGridPageChangedEventArgs e) {
                               OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("./") + "test.mdb");
    OleDbCommand cmd=new OleDbCommand("select newsid,title from news order by newsid desc",conn);
    conn.Open();
    DataSet DS=new DataSet();
    OleDbDataAdapter DA=new OleDbDataAdapter();
    DA.SelectCommand=cmd;
    DA.Fill(DS,"newsid");
    DGnews.DataSource=DS.Tables[0].DefaultView;



    DGnews.CurrentPageIndex = e.NewPageIndex;
    DGnews.DataBind();

    }
      

  5.   

    改成
    private void Page_Load(object sender, System.EventArgs e)
    {
    if(!Page.IsPostBack)
    {
    bindDB();
    }
    }
      

  6.   

    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    if(!Page.IsPostBack)
    {
    bindDB();
    }

    }
    void bindDB()
    {
    OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("./") + "test.mdb");
    OleDbCommand cmd=new OleDbCommand("select newsid,title from news order by newsid desc",conn);
    conn.Open();
    DataSet DS=new DataSet();
    OleDbDataAdapter DA=new OleDbDataAdapter();
    DA.SelectCommand=cmd;
    DA.Fill(DS,"newsid");
    DGnews.DataSource=DS.Tables[0].DefaultView;

    DGnews.DataBind();
    conn.Close();
    }
    public void DGPageIndex_Changed(Object sender, DataGridPageChangedEventArgs e) {
    DGnews.CurrentPageIndex = e.NewPageIndex;
    bindDB();

    }
      

  7.   

    我看了大家的意见,似乎都是要求去掉VirtualItemCount的设置段,但是我的AllowCustomPaging="True",所以必须设置,否则根本就无法出现1后面的页码,我想问题应该不在这里,分页的代码执行了,我输出CurrentPageIndex的值也没有问题,但是数据却没有变化,不知道为什么