protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                int allsize = 0;
                              
                ELibraryUtlity eu = new ELibraryUtlity();
                allsize = eu.SQLExecuteScalar("Question_Info"," and pid=1");                SqlDataReader sdr = eu.getSqlDatareader("select   * from Question_Info where pid=1");
                try
                {
                    if (sdr != null)
                    {                        this.GridView1.DataSource = sdr;
                        this.GridView1.DataBind();                        eu.closesSqlsdr(sdr);
                        this.AspNetPager1.RecordCount = allsize;
                    }
                }
                catch (Exception)
                {
                    eu.closesSqlsdr(sdr);
                    throw;
                }
                finally
                {                    eu.closesSqlsdr(sdr);
                }
            }
        }        protected void AspNetPager1_PageChanged(object sender, EventArgs e)
        {
            int pageSize = this.AspNetPager1.PageSize;
            int pageIndex = this.AspNetPager1.CurrentPageIndex;
            string sql = "";
            //返回的是我又查了后面的20条
            sql = MyPage.getSql(pageSize, pageIndex, "Question_Info", "");
           //我的DBHelper类
            ELibraryUtlity eu = new ELibraryUtlity();
            SqlDataReader sdr = eu.getSqlDatareader(sql); ;
            try
            {
                if (sdr != null)
                {
                    
                    this.GridView1.DataSource = sdr;
                    this.GridView1.DataBind();
                    eu.closesSqlsdr(sdr);
                   
                }
            }
            catch (Exception)
            {
                eu.closesSqlsdr(sdr);
                throw;
            }
            finally
            {                eu.closesSqlsdr(sdr);
            }
        }        protected void btnsearch_Click(object sender, EventArgs e)
        {
             //这里我想获取文本框的值作为条件 进行搜索  因为不知道怎么支持分页 所以在这请教一下
        }

解决方案 »

  1.   

    我用的是URL分页  如果不借助PagedDataSource  怎么写?
      

  2.   

    加个视图viewstate 里面放查询条件 然后在重新绑定数据源
      

  3.   

            string sql = "select * from h_student where 1=1";
             if (stuname != "")
            {
                sql += " and stu_name like '%" + stuname+"%'";
            }        DataSet ds = new DataSet();
            AspNetPager1.RecordCount = SqlHelper.GetDataTable(sql).Rows.Count;
            GridView1.DataSource = SqlHelper.FillDataSet(ds, SqlHelper.GetCmd(sql), AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - 1), AspNetPager1.PageSize, "h_student"); 
    GridView1.DataBind();
      

  4.   

    呵呵。。那个控件很好?到网上找下资料咯。我之前做过,用ddl或者文本都可以。很简单
      

  5.   

    放到BIND方法里,然后直接调用
    protected void AspNetPager1_PageChanged(object sender, EventArgs e)
        {
            Bind();
        }
    protected void btnsearch_Click(object sender, EventArgs e)
            {
                 //这里我想获取文本框的值作为条件 进行搜索  因为不知道怎么支持分页 所以在这请教一下
               Bind();
             }
      

  6.   

    将aspnetpager的属性设置下就可以了
      

  7.   

    请下载示例项目,参考示例项目中url搜索的例子