有的时候对于产品或是产品类别,可是其它什么的。要求手动排序,以让它们以符合我们的要求显示顺序。这里我们需要在数据库中加一字段,用来排序,然后我们只要操作这一字段,就可以完成对排序的要求。
正面:
<ItemTemplate>
<asp:HiddenField ID="hfcateid1" runat="server" Value='<%#Eval("CateId")%>' />
<tr align="center" bgcolor="#FFFFFF">
<td bgcolor="#C4ECFF">
<%#Eval ("CateId") %>
</td>
<td align="left" bgcolor="#C4ECFF">
╋<%#Eval("CateName")%>
</td>
<td bgcolor="#C4ECFF">
<%#Eval("CateNameEn")%>
</td>
<td bgcolor="#C4ECFF"><%#Eval("OrderNum")%> <asp:LinkButton ID="LinkButton1" CommandArgument='<%#Eval ("CateId") %>' CommandName="UpOrder" runat="server">向上↑</asp:LinkButton> <asp:LinkButton ID="LinkButton2" CommandArgument='<%#Eval ("CateId") %>' CommandName="DownOrder" runat="server">向下↓</asp:LinkButton></td>
<td bgcolor="#C4ECFF">
<a href='category_edit.aspx?id=<%#Eval ("CateId") %>'>修改</a> </td>
<td bgcolor="#C4ECFF">
<asp:LinkButton ID="lbtDel" CommandArgument='<%#Eval ("CateId") %>' CommandName="Del" runat="server" OnClientClick="return confirm('确定删除吗?')">删除</asp:LinkButton>
</td>
</tr>
<asp:Repeater ID="rpcate2" runat="server" OnItemDataBound="rpcate2_ItemDataBound" OnItemCommand="rpcate2_ItemCommand">
<ItemTemplate>
反面:
protected void rpcate1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
if (e.CommandName == "Del")
{
CateInfoBll.DeleteCateInfoById(Convert.ToInt32(e.CommandArgument));
binddata();
}
if (e.CommandName == "UpOrder")
{
CateInfoBll.OrderCate(Convert.ToInt32(e.CommandArgument),1);
binddata();
}
if (e.CommandName == "DownOrder")
{
CateInfoBll.OrderCate(Convert.ToInt32(e.CommandArgument),0);
binddata();
}
}