如上,我在页面加载时创建临时表,然后页面显示出来后没有分页功能,于是我回去程序里把“启用分页”选上(在GV1控件上),运行后有分页效果,但是我单击页2时,出错!
GridView“GridView1”激发了未处理的事件“PageIndexChanging”。 
请大家指教!

解决方案 »

  1.   

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            this.GridView1.PageIndex = e.NewPageIndex;
            this.filldatatodatagrid();
        }
      

  2.   

    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            this.GridView1.EditIndex = e.NewEditIndex;
            this.filldatatodatagrid();
        }
        protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
        {
            this.GridView1.EditIndex = -1;
            this.filldatatodatagrid();
        }filldatatodatagrid()方法是刷新方法。
      

  3.   

    自定义分页代码:#region GridView1页码跳转
            protected void link_next_Click(object sender, EventArgs e)
            {
                if (GridView1.PageIndex < GridView1.PageCount)
                    GridView1.PageIndex++;
                CheckPager();
                ShowPageIndex();
                GridBind();
            }        protected void linke_pre_Click(object sender, EventArgs e)
            {
                if (GridView1.PageIndex > 0)
                    GridView1.PageIndex--;
                CheckPager();
                ShowPageIndex();
                GridBind();
            }        protected void link_frist_Click(object sender, EventArgs e)
            {
                GridView1.PageIndex = 0;
                CheckPager();
                ShowPageIndex();
                GridBind();
            }        protected void link_last_Click(object sender, EventArgs e)
            {
                GridView1.PageIndex = GridView1.PageCount - 1;
                CheckPager();
                ShowPageIndex();
                GridBind();
            }        protected void img_goto_Click(object sender, ImageClickEventArgs e)
            {
                int page_num = 0;
                if (this.txt_pagenum.Text != string.Empty)
                {
                    try
                    {
                        page_num = Convert.ToInt32(this.txt_pagenum.Text);
                        if (page_num > 0 && page_num <= GridView1.PageCount)
                            this.GridView1.PageIndex = page_num - 1;
                    }
                    catch
                    {
                        page_num = this.GridView1.PageIndex;
                    }
                    CheckPager();
                    ShowPageIndex();
                    GridBind();
                }
            }
            public void ShowPageIndex()
            {
                if (this.GridView1 != null)
                {
                    this.img_goto.Enabled = true;
                    if (this.GridView1.PageCount != 0)
                    {
                        pagenum = Convert.ToString(GridView1.PageIndex + 1);//给参数赋页码值
                        this.lab_pageindex.Text = Convert.ToString(GridView1.PageIndex + 1) + "/" + this.GridView1.PageCount.ToString();
                        this.img_goto.Enabled = true;
                    }
                    else
                    {
                        pagenum = Convert.ToString(GridView1.PageIndex + 1);//给参数赋页码值
                        this.lab_pageindex.Text = Convert.ToString(GridView1.PageIndex) + "/" + this.GridView1.PageCount.ToString();
                        this.img_goto.Enabled = false;
                    }                //this.txt_pagenum.Text = Convert.ToString(GridView1.PageIndex + 1);
                    CheckPager();
                }
                else
                {
                    this.lab_pageindex.Text = "0/0";
                    this.img_goto.Enabled = false;
                    this.link_frist.Enabled = false;
                    this.linke_pre.Enabled = false;
                    this.link_next.Enabled = false;
                    this.link_last.Enabled = false;
                    this.img_goto.Enabled = false;
                }
            }
            private void CheckPager()
            {
                if (GridView1.PageIndex <= 0)
                {
                    this.link_frist.Enabled = false;
                    this.linke_pre.Enabled = false;
                }
                else
                {
                    this.link_frist.Enabled = true;
                    this.linke_pre.Enabled = true;
                }
                if (GridView1.PageIndex >= GridView1.PageCount - 1)
                {
                    this.link_next.Enabled = false;
                    this.link_last.Enabled = false;
                }
                else
                {
                    this.link_next.Enabled = true;
                    this.link_last.Enabled = true;
                }
            }
            #endregion
      

  4.   

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) 
        { 
            this.GridView1.PageIndex = e.NewPageIndex; 
            this.filldatatodatagrid(); 
        }
    加这个以后看看,现在分页一般都自己做个分页控件.
      

  5.   

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridView1.PageIndex = e.NewPageIndex;
            从新绑定GridView1;
        }