牛腩购物21:新品上架页面制作,下拉dropdownlist 进行产品的排序,asc,desc

image    下拉排序
 
<asp:DropDownList ID="ddlOrder" runat="server" AutoPostBack="True" 

                                    onselectedindexchanged="ddlOrder_SelectedIndexChanged" >

                                    <asp:ListItem Value="1">↓按上架时间降序排列</asp:ListItem>

                                    <asp:ListItem Value="0">↑按上架时间升序排列 </asp:ListItem>

                                    

                                    <asp:ListItem Value="2">↑按价格升序排列</asp:ListItem>

                                    <asp:ListItem Value="3">↓按价格降序排列</asp:ListItem>

                                </asp:DropDownList>
 
数据库中默认的排序 是升序  也就是 asc  (数字从小到大,时间从过去到将来)
 
desc  倒序,数字从大到小,时间从将来到过去
 

当我们通过下拉菜单进行排序的时候,要记得对 dropdownlist 进行 自动回发   AutoPostBack   并且 双击,产生修改select的事件

 

//绑定产品

       private void BindRepPro()

       {

           string order = "createdate";

           string ordertype = "desc";

           switch (ddlOrder.SelectedValue)

           {

               case "0":

                   order = "createdate";ordertype="asc";

                   break;

               case "1":

                   order = "createdate";ordertype="desc";

                   break;

               case "2":

                   order = "memberprice";ordertype="asc";

                   break;

               case "3":

                   order = "memberprice";ordertype="desc";

                   break;

               default:

                   break;

           }

           //这里获取产品的时候,是调用分页来调用。分页的个数由 anp.PageSize 控制

           repNewPro.DataSource = pro.GetList("*", order, ordertype, anp.PageSize, anp.CurrentPageIndex, getCond());

           repNewPro.DataBind();

       }



       //获取条件

       private string getCond()

       {

           string cond = "isxp=1";

           return cond;

       }

       //分页控件点击事件(实际上就是重新绑定产品)

       protected void anp_PageChanged(object sender, EventArgs e)

       {

           BindRepPro();

       }



       //如果select 有修改,那么我们就重新进行一次绑定数据

       protected void ddlOrder_SelectedIndexChanged(object sender, EventArgs e)

       {

           BindRepPro();

       }

你可能感兴趣的:(list)