我想用DropDownList下拉框来做条件限制,然后在页面显示数据的分页情况,现在的问题是,
选择不同的下拉选项,会出现不同的分页,可是  
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{       string sql = "select * from Management where Type='" + DDLT_PolicyCategory.SelectedItem.Text + "' order by id desc";
        GridDataBind(AspNetPager1,sql);
}
事件总是有问题---------点下一页时,总是出现第一次页面运行时候DDL的项对应的分页,能给些提示吗?

解决方案 »

  1.   

    http://at5n55.blog.163.com/blog/static/12204372006101842211800/
      

  2.   

    1.page_load 没有加if(!ispostback){}2.gridview  GridView1.PageIndex=aspnetparger.currentpageindex.
      

  3.   

    ...
    参考我这个条件查询repeater+aspnetpager #region  关键字和日期搜索
            public void FN_SerchByDateAndFileName()
            {
                try
                {
                    folderid = Session["id"].ToString();//文件夹编号
                    Guid fid = new Guid(folderid);//转换成GUID类型
                    NRModel.File model = new Asiastar.NRModel.File();
                    NRBLL.File bn = new Asiastar.NRBLL.File();
                    key = Request["key"].ToString();//条件
                    if (key != null)
                    {
                        model.FileNam = key;
                    }
                    stardate = Request["stardate"].ToString();//开始日期
                    dataend = Request["enddate"].ToString();//结束日期
                    if (bn.FN_SerchByDateAndType(fid, model, stardate, dataend) != null || bn.FN_SerchByDateAndType(fid, model, stardate, dataend).Tables[0].Rows.Count > 0)
                    {
                        PagedDataSource pds = new PagedDataSource();
                        pds.AllowPaging = true;//启用分页
                        pds.PageSize = pager1.PageSize; //设置页面显示的项数
                        pds.CurrentPageIndex = pager1.CurrentPageIndex - 1;//当前索引
                        pds.DataSource = bn.FN_SerchByDateAndType(fid, model, stardate, dataend).Tables[0].DefaultView;//指定数据源
                        pager1.RecordCount = bn.FN_SerchByDateAndType(fid, model, stardate, dataend).Tables[0].Rows.Count;
                        this.RepeaterShow.DataSource = pds;
                        this.RepeaterShow.DataBind();
                    }
                }
                catch (Exception ex)
                {
                    NR.Error.Log.LogType(ex.ToString());//记录异常
                }
            }
            #endregion
      

  4.   


    第一个if(!ispostback){}我有写.
    第2个 GridView1.PageIndex=aspnetparger.currentpageindex.
    这个是在分页事件中写的吧,我不是在分页事件中写,我是用repeater+aspnetpager来的
      

  5.   

    我也是的 哥。一样的。那个不是在分页事件中写的 。你是geidview 吧我那个repeater换掉就行了  注意数据源
      

  6.   

    问题是,点击AspNetPager,会重新刷新页面,Dropdownlist选择改变了也会触发回发事件