【发布时间】:2013-05-17 21:16:21
【问题描述】:
我在写一个小的C#应用程序主要是为了好玩,并且有一个DataGridView来显示一些数据,它绑定到BindingList。从我决定让表格可排序的那一刻起,乐趣就开始了,这就是使用 BindingList 的原因。据我了解,BindingList 中没有对此的标准实现,但 msdn 有涵盖此的文章 (about implementing sort and find for BindingList)。长话短说,它们的实现中很少有会引起麻烦的行:
SomeClass tmp;
for(...)
{
tmp = this[i]; //fast
this[i] = this[position]; //slow
this[position] = tmp; //slow
}
正如 cmets 所示,第一个任务不需要太多时间,但其他两个确实很慢。我不明白它背后的原因,但因为它排序列表 50 左右的元素大约需要两秒钟。 好吧,我可以使用一些解决方法,但它似乎有点难看。此外,我真的很想知道是什么导致了这种行为。
【问题讨论】:
标签: c# list variable-assignment