以下代码,翻页时Listfg和listcz选择的值就没有了,搜出来的就是一大堆没有条件的数据,我想在有条件时搜索出来数据的基础上进行翻页,该如何做?   谢谢大家!
private void BindList()
    {
        string ID;
        string style;
        string Material;
        int page = 1;
        try
        {
            if (js.pi("page") > 0)
                page = js.pi("page");
        }
        catch { }        if (Safe(js.p("ID")) == null || Safe(js.p("ID")) == "")
            ID = "BA01";
        ID = Safe(js.p("ID")).Substring(0, 2);        if (listcz.SelectedValue.ToString() == "按材质查询")
        {
            Material = "";
        }
        else
        {
            Material = Safe(listcz.SelectedValue.ToString());
        }        if (Listfg.SelectedValue.ToString() == "按风格查询")
        {
            style = "";
        }
        else
        {
            style = Safe(Listfg.SelectedValue.ToString());
        }        SqlParameter[] pars = new SqlParameter[]
        {
            new SqlParameter("@ProductsNO",ID),
            new SqlParameter("@Style",style),
            new SqlParameter("@Material",Material),
            new SqlParameter("@Color",Safe(js.p("Color"))),
            new SqlParameter("@Price",Safe(js.p("Price"))),
        //    new SqlParameter("@page",page),
      //      new SqlParameter("@pagesize",12),
        };
        DataSet ds = db.RunProc("procProductsSelectAll", pars, "products");        PagedDataSource objPds = new PagedDataSource();
        objPds.DataSource = ds.Tables[0].DefaultView;
        objPds.AllowPaging = true;
        objPds.PageSize = 12;
        int CurPage;
        int PageCount = ds.Tables[0].Rows.Count / objPds.PageSize;
        if (ds.Tables[0].Rows.Count % objPds.PageSize > 0)
        {
            PageCount++;
        }
        if (Request.QueryString["Page"] != null)
            CurPage = Convert.ToInt32(Request.QueryString["Page"]);
        else
            CurPage = 1;
        objPds.CurrentPageIndex = CurPage - 1;
        this.Label1.Text = "当前为第:" + CurPage.ToString() + "页   共" + PageCount.ToString() + "页";
        if (!objPds.IsFirstPage)
        {
            lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?ID=" + ID + "&Page=" + Convert.ToString((CurPage - 1));
        }
        else
        {
            lnkPrev.EnableViewState = false;
        }
        if (!objPds.IsLastPage)
        {
            lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?ID="+ID+"&Page=" + Convert.ToString(CurPage + 1);
        }
        else
        {
            lnkNext.EnableViewState = false;
        }        DataListtp.DataSource = objPds;
        DataListtp.DataBind();        ViewState.Add("Listfg", Listfg.SelectedValue);
        ViewState.Add("listcz", listcz.SelectedValue);
     
    }