国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C# listview 點擊列頭排序的實例

2019-10-29 21:15:10
字體:
供稿:網(wǎng)友

實例如下:

#region 自定義變量  int currentCol = -1;  bool sort;  #endregion//列頭點擊事件private void lvw_ColumnClick(object sender, ColumnClickEventArgs e)  {   string Asc = ((char)0x25bc).ToString().PadLeft(4, ' ');   string Des = ((char)0x25b2).ToString().PadLeft(4, ' ');   if (sort == false)   {    sort = true;    string oldStr = this.lvw.Columns[e.Column].Text.TrimEnd((char)0x25bc, (char)0x25b2, ' ');    this.lvw.Columns[e.Column].Text = oldStr + Des;   }   else if (sort == true)   {    sort = false;    string oldStr = this.lvw.Columns[e.Column].Text.TrimEnd((char)0x25bc, (char)0x25b2, ' ');    this.lvw.Columns[e.Column].Text = oldStr + Asc;   }   if(lvw.Columns[e.Column].Tag.ToString()=="n")//在設(shè)計器中把列頭的tag設(shè)為"n",則表示該列按數(shù)字比較器處理,否則為文本    lvw.ListViewItemSorter = new ListViewItemComparerNum(e.Column, sort);   else    lvw.ListViewItemSorter = new ListViewItemComparer(e.Column, sort);   this.lvw.Sort();   int rowCount = this.lvw.Items.Count;   if (currentCol != -1)   {    if (e.Column != currentCol)     this.lvw.Columns[currentCol].Text = this.lvw.Columns[currentCol].Text.TrimEnd((char)0x25bc, (char)0x25b2, ' ');   }   currentCol = e.Column;  }//文本比較器public class ListViewItemComparer : IComparer  {   public bool sort_b;   public SortOrder order = SortOrder.Ascending;   private int col;   public ListViewItemComparer()   {    col = 0;   }   public ListViewItemComparer(int column, bool sort)   {    col = column;    sort_b = sort;   }   public int Compare(object x, object y)   {    if (sort_b)    {     return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);    }    else    {     return String.Compare(((ListViewItem)y).SubItems[col].Text, ((ListViewItem)x).SubItems[col].Text);    }   }  }  //數(shù)字比較器  public class ListViewItemComparerNum : IComparer  {   public bool sort_b;   public SortOrder order = SortOrder.Ascending;   private int col;   public ListViewItemComparerNum()   {    col = 0;   }   public ListViewItemComparerNum(int column, bool sort)   {    col = column;    sort_b = sort;   }   public int Compare(object x, object y)   {    decimal d1=Convert.ToDecimal(((ListViewItem)x).SubItems[col].Text);    decimal d2=Convert.ToDecimal(((ListViewItem)y).SubItems[col].Text);    if (sort_b)    {     return decimal.Compare(d1,d2);    }    else    {     return decimal.Compare(d2,d1);    }   }  }

以上這篇C# listview 點擊列頭排序的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到c#教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 肃北| 扶沟县| 荥经县| 甘洛县| 常宁市| 克拉玛依市| 元朗区| 三河市| 凭祥市| 龙山县| 加查县| 彭泽县| 韶山市| 饶阳县| 浙江省| 环江| 响水县| 铜梁县| 扶沟县| 嘉定区| 宁夏| 水城县| 铁力市| 宜宾市| 大冶市| 河池市| 大竹县| 雷州市| 东丽区| 江川县| 西充县| 额敏县| 曲阜市| 共和县| 塔河县| 修文县| 大宁县| 兰溪市| 鹤壁市| 南乐县| 漠河县|