mbasirati
یک شنبه 12 خرداد 1392, 00:28 صبح
سلام
من یه لیست ویو دارم که اطلاعات یه جدول رو داره نمایش میده. بالای این لیست ویو دوتا دراپ داون لیست گذاشتم و یه باتون و بعد از انتخاب مقادیر و زدن دکمه، اطلاعات لیست ویو فیلتر میشه.
کدی هم که کار فیلتر کردن رو انجام میده توی pageLoad نوشتم. نه توی رویداد کلیک دکمه:
protected void Page_Load(object sender, EventArgs e)
{
SqlDataSource2.SelectParameters.Clear();
string query = "SELECT Request.*, Users.FullName, Users.Company, Users.Fax, Users.Tel FROM Request INNER JOIN Users ON Request.EmailUser = Users.Email where Approved='true'";
if (ddlType.SelectedValue != "-1")
query += " and Request.ReqType=@ReqType ";
if (ddlCat.SelectedValue != "-1")
query += " and Request.ReqCatID=@ReqCatID ";
SqlDataSource2.SelectParameters.Add("ReqType", ddlType.SelectedValue);
SqlDataSource2.SelectParameters.Add("ReqCatID", ddlCat.SelectedValue);
SqlDataSource2.SelectCommand = query;
ListView1.DataBind();
}
تا اینجا مشکلی نیس. من لیست ویو رو با استفاده از data pager صفحه بندی کردم. اگه اطلاعات فیلتر شده زیاد باشه طبیعتا لیست ویو صفحه بندی میشه. وقتی روی یکی از صفحه ها کلیک میشه فیلتر اطلاعات از بین میره (علتشم طبیعیه. چون مقادیر انتخاب شده در دراپ داون لیستها ریست میشه)
برای حل این مشکل چیکار کنم؟
من یه لیست ویو دارم که اطلاعات یه جدول رو داره نمایش میده. بالای این لیست ویو دوتا دراپ داون لیست گذاشتم و یه باتون و بعد از انتخاب مقادیر و زدن دکمه، اطلاعات لیست ویو فیلتر میشه.
کدی هم که کار فیلتر کردن رو انجام میده توی pageLoad نوشتم. نه توی رویداد کلیک دکمه:
protected void Page_Load(object sender, EventArgs e)
{
SqlDataSource2.SelectParameters.Clear();
string query = "SELECT Request.*, Users.FullName, Users.Company, Users.Fax, Users.Tel FROM Request INNER JOIN Users ON Request.EmailUser = Users.Email where Approved='true'";
if (ddlType.SelectedValue != "-1")
query += " and Request.ReqType=@ReqType ";
if (ddlCat.SelectedValue != "-1")
query += " and Request.ReqCatID=@ReqCatID ";
SqlDataSource2.SelectParameters.Add("ReqType", ddlType.SelectedValue);
SqlDataSource2.SelectParameters.Add("ReqCatID", ddlCat.SelectedValue);
SqlDataSource2.SelectCommand = query;
ListView1.DataBind();
}
تا اینجا مشکلی نیس. من لیست ویو رو با استفاده از data pager صفحه بندی کردم. اگه اطلاعات فیلتر شده زیاد باشه طبیعتا لیست ویو صفحه بندی میشه. وقتی روی یکی از صفحه ها کلیک میشه فیلتر اطلاعات از بین میره (علتشم طبیعیه. چون مقادیر انتخاب شده در دراپ داون لیستها ریست میشه)
برای حل این مشکل چیکار کنم؟