如何在WinForms .NET 2.0中按特定列號對列表視圖控件進行排序?例如我有一個名爲「Line Number」的索引爲1的列,我想按升序對列表視圖中的項目進行排序。listview C#按特定列排序
回答
我已經在很多的Winform項目中使用此列分揀機:
private void listView1_ColumnClick(object sender,
System.Windows.Forms.ColumnClickEventArgs e)
{
ListView myListView = (ListView)sender;
// Determine if clicked column is already the column that is being sorted.
if (e.Column == lvwColumnSorter.SortColumn)
{
// Reverse the current sort direction for this column.
if (lvwColumnSorter.Order == SortOrder.Ascending)
{
lvwColumnSorter.Order = SortOrder.Descending;
}
else
{
lvwColumnSorter.Order = SortOrder.Ascending;
}
}
else
{
// Set the column number that is to be sorted; default to ascending.
lvwColumnSorter.SortColumn = e.Column;
lvwColumnSorter.Order = SortOrder.Ascending;
}
// Perform the sort with these new sort options.
myListView.Sort();
}
來源:Click Here
就行了。謝謝。 – david
有例子MSDN上ListView.ColumnClick article:非常簡短。從本質上講,你寫一個ListViewItemComparer
,並用它每次單擊列:
class ListViewItemComparer : IComparer
{
private int col = 0;
public ListViewItemComparer(int column)
{
col = column;
}
public int Compare(object x, object y)
{
return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
}
}
class MyForm : Form
{
// private System.Windows.Forms.ListView listView1;
// ColumnClick event handler.
private void ColumnClick(object o, ColumnClickEventArgs e)
{
this.listView1.ListViewItemSorter = new ListViewItemComparer(e.Column);
}
}
不知道爲什麼這是下降標記。爲了快速排序它效果很好!在asc/desc之間進行切換很容易!不管怎麼說,還是要謝謝你! –
只需添加「using System.Collections;」在你的項目上,這很簡單,它的工作原理是基本的升級 –
- 1. Listview按列排序
- 2. asp.net ListView按列排序
- 3. ListView按錯誤列排序
- 4. 如何按列排序ListView?
- 5. MySQL按特定順序按月排列
- 6. MySQL - 按特定順序列排序
- 7. 按特定類型排序收集c#
- 8. 如何按特定列排序格式?
- 9. 按某些特定列值排序
- 10. Jquery DataTables,按特定列排序?
- 11. 按特定順序排列結果集
- 12. 排序特定列
- 13. C - 按特定列對3d字符串數組進行排序
- 14. C++ - 按特定順序排列矢量元素
- 15. TSQL按特定值排序
- 16. 如何按列排序Android ListView?
- 17. C#按2列排序表
- 18. Cout按降序排列C++
- 19. Uniq -c按列排序?
- 20. 特定的陣列排序
- 21. Rails:爲特定列排序
- 22. TListView列排序(按前兩列排序)
- 23. 如何從SugarCRM特定列中的listView中刪除排序
- 24. 按特定模式排列列表項
- 25. 第24小時按特定列排序,然後按日期排序
- 26. 按日期排序ListView
- 27. 排序列由特定序列R中
- 28. 排序值按特定的順序
- 29. PHP按特定順序排序
- 30. C - Qsort:按升序排序並按年降序排列
請參見本Microsoft實現:https://support.microsoft.com/en-us/kb/319401 – Mangesh