后台代码:
- C# code
-
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { this.BindListView(-1); this.BindSort(); } } /// <summary> /// 绑定排序选项 /// </summary> protected void BindSort() { //新建下拉选项 ExtAspNet.ListItem lt = new ExtAspNet.ListItem(); lt.Text = "默认"; lt.Value = "0"; ddLSort.Items.Add(lt); lt = new ExtAspNet.ListItem(); lt.Text = "单号"; lt.Value = "1"; ddLSort.Items.Add(lt); lt = new ExtAspNet.ListItem(); lt.Text = "客户名称"; lt.Value = "2"; ddLSort.Items.Add(lt); lt = new ExtAspNet.ListItem(); lt.Text = "实际到款日期"; lt.Value = "3"; ddLSort.Items.Add(lt); lt = new ExtAspNet.ListItem(); lt.Text = "凭证到达日期"; lt.Value = "4"; ddLSort.Items.Add(lt); //选定默认项 for (int i = 0; i < ddLSort.Items.Count; i++) { if (ddLSort.Items[i].Text == "默认") { ddLSort.Items[i].Selected = true; } } } /// <summary> /// 绑定到款信息 /// </summary> /// <param name="sort">排序的方式,如为-1,则为默认排序</param> protected void BindListView(int sort) { //定义并获取查询语句 string swhere = getSearchSql(); //获取排序方式 swhere += GetSort(sort); DataTable dt = tbBKPayedFund_BLLSub.GettbBKPayedFundByNoRefAllByFilte(swhere); this.ListView1.DataSource = dt; this.ListView1.DataBind(); } #region 可区域可复用方法 /// <summary> /// 获取查询语句 /// </summary> /// <returns></returns> protected string getSearchSql() { string swhere = " 1=1 "; //获取客户名称 if (this.tbCustomerName.Text != "") { swhere += " and Customer_FullName like '%" + tbCustomerName.Text + "%' "; } //返回查询sql语句 return swhere; } /// <summary> /// 获取排序语句 /// </summary> /// <param name="sort">排序种类</param> /// <returns>排序语句</returns> protected string GetSort(int sort) { string sortsql = ""; //判断排序的值并分配相应的排序语句 switch (sort) { case 0: sortsql = " order by PayedFund_Code desc,PayedFund_CustomerID desc "; break; case 1: sortsql = " order by PayedFund_Code desc"; break; case 2: sortsql = " order by PayedFund_CustomerID desc"; break; case 3: sortsql = " order by PayedFund_PayedDate desc"; break; case 4: sortsql = " order by PayedFund_AdvanceVoucherReachTime desc"; break; default: sortsql = " order by PayedFund_Code desc,PayedFund_CustomerID desc "; break; } //返回 return sortsql; } #endregion /// <summary> /// 排序方式改变响应 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ddLSort_SelectedIndexChanged(object sender, EventArgs e) { //将之前为listview绑定的数据清空 ListView1.DataSource = null; ListView1.DataBind(); int sort = Convert.ToInt32(this.ddLSort.SelectedValue); //重新绑定数据 this.BindListView(sort); }