当前位置: 代码迷 >> ASP.NET >> asp.net gridview 分页有关问题
  详细解决方案

asp.net gridview 分页有关问题

热度:2288   发布时间:2013-02-25 00:00:00.0
asp.net gridview 分页问题
现在想要实现页面上有一个下拉框,是控制分页的页数,下拉框选择一个分页数目,gridview就按照这个分页数分页。
请问大侠们有什么方法。
public void DataBingGridView() //数据绑定
    {
        //get time parameters
        string date1 = CommonMethod.ConvertToStr(txtBeginDate.Text);
        string date2 = CommonMethod.ConvertToStr(txtEndDate.Text);
        //get cashflow method and has parameters
        DataTable dt = BLL.CashFlow.GetFullCashData(date1, date2).Tables[0];
        //DataTable dt = BLL.CashFlow.GetFullCashData().Tables[0];
        PagedDataSource pds = new PagedDataSource();
        pds.DataSource = dt.DefaultView;
        //paging
        pds.AllowPaging = true;
         pds.PageSize = 25;// 这个是控制分页数目的,就是想让其是动态可以设置的
        PageControl1.DataSource = pds;
        //bind data
        GroupedGridView1.DataSource = pds;
        GroupedGridView1.DataBind();
    }
请问有什么好的解决方案
------最佳解决方案--------------------------------------------------------

 /// <summary>
    /// 分页
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void GvProduct_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GvProduct.PageIndex = e.NewPageIndex;
        _DataBind();
        //执行Go
        TextBox txtGoPageNum = (TextBox)GvProduct.BottomPagerRow.FindControl("txtGoPageNum");
        txtGoPageNum.Text = (GvProduct.PageIndex + 1).ToString();
    }




 /// <summary>
    /// 执行行命令
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void GvProduct_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "Go")
        {
            try
            {
                TextBox txtGoPageNum = (TextBox)GvProduct.BottomPagerRow.FindControl("txtGoPageNum");//底部导航命令
                int newPageIndex = Int32.Parse(txtGoPageNum.Text.Trim());