如何从代码中执行列表视图排序?

时间:2014-06-15 09:46:36

标签: c# listview sorting

我正在寻找在添加项目后对listView进行排序的说明。我不想使用“自动排序”,因为它非常非常慢。我有5列,但我只想按第一列排序。任何人吗?

 listView1.BeginUpdate();
 while (csv.ReadNextRecord())
 listView1.Items.Add(new ListViewItem(new[] { csv[0], csv[1], csv[2], csv[3], csv[4] }));
 // sort here
 listView1.EndUpdate();
 // or here

1 个答案:

答案 0 :(得分:0)

这里最好的做法是将您的数据存储在通用列表中,并在显示在ui之前对其进行排序。控件通常不能很好地处理大量数据,因此您可以控制原始数据的控制。

您可以在这里做的另一件事是为list.sort方法提供自定义排序器。通常情况下,您不太可能在框架上获得巨额节省。考虑在等待时排序和显示进度指示器,这对于长时间运行的进程来说非常典型。

如果您想查看以下有关自定义比较http://msdn.microsoft.com/en-us/library/234b841s(v=vs.110).aspx

的链接,请执行自定义操作