源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

DropDownList根据下拉项的Text文本序号排序

  • 时间:2020-07-05 03:09 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:DropDownList根据下拉项的Text文本序号排序
有时候刚好表中没有可以排序的字段,又不想修改表结构,但它的项文本有序号,这时就可以用这方法排序,例如: [img]http://img.1sucai.cn/uploads/article/2018010710/20180107100144_0_30164.jpg?201321101245[/img] 测试页Default2.aspx:
[u]复制代码[/u] 代码如下:
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:DropDownList runat="server" ID="ddlType"> </asp:DropDownList> <asp:Button runat="server" ID="btnSort" onclick="btnSort_Click" Text="排序" /> </div> </form> </body> </html>
Default2.aspx.cs:
[u]复制代码[/u] 代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Text.RegularExpressions; public partial class Default2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ddlType.Items.Add(new ListItem("--请选择--")); ddlType.Items.Add(new ListItem("2_bb")); ddlType.Items.Add(new ListItem("1_aa")); ddlType.Items.Add(new ListItem("4_ee")); ddlType.Items.Add(new ListItem("3_dd")); } } protected void btnSort_Click(object sender, EventArgs e) { DropDownListBubbleSort(ddlType); //DropDownListSelectionSort(ddlType); } /// <summary> /// 冒泡排序 /// </summary> /// <param name="ddl"></param> public void DropDownListBubbleSort(DropDownList ddl) { ListItem listItem = new ListItem(); for (int i = 0; i < ddl.Items.Count; i++) { for (int j = i + 1; j < ddl.Items.Count; j++) { int firstVal = 0, nextVal = 0; int.TryParse(Regex.Replace(ddl.Items[i].Text, @"D", @"", RegexOptions.IgnoreCase), out firstVal); int.TryParse(Regex.Replace(ddl.Items[j].Text, @"D", @"", RegexOptions.IgnoreCase), out nextVal); if (firstVal == 0 || nextVal == 0) continue; if (firstVal > nextVal) { listItem = ddl.Items[j]; ddl.Items.Remove(ddl.Items[j]); ddl.Items.Insert(i, listItem); } } } } /// <summary> /// 选择排序 /// </summary> /// <param name="ddl"></param> public void DropDownListSelectionSort(DropDownList ddl) { ListItem listItem = new ListItem(); int length = ddl.Items.Count; for (int i = 0; i < length; i++) { int min = 0; int.TryParse(Regex.Replace(ddl.Items[i].Text, @"D", @"", RegexOptions.IgnoreCase), out min); if (min == 0) continue; int minIndex = i; for (int j = i + 1; j < length; j++) { int nextVal = 0; int.TryParse(Regex.Replace(ddl.Items[j].Text, @"D", @"", RegexOptions.IgnoreCase), out nextVal); if (nextVal == 0) continue; if (min > nextVal) { min = nextVal; minIndex = j; } } if (minIndex != i) { listItem = ddl.Items[minIndex]; ddl.Items.Remove(ddl.Items[minIndex]); ddl.Items.Insert(i, listItem); } } } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部