我有一个有几列的 ListView。
其中一个包含“名称”,另一个包含“金额”。我想允许用户单击列表视图中的名称列并按字母顺序排序,还允许用户单击“金额”并按数字排序(更高/更低-更低/更高)。
实现这一点的最佳方法是什么?
它已部分实施,但未完全实施。Microsoft 在http://support.microsoft.com/kb/319401上有关于如何解决此问题的说明。
为了解决这个问题,我编写了自己的 ListViewItemComparer,它实现了 IComparer 接口。然后,根据列是数字还是字符串,我进行了适当的比较。
ObjectListView(一个围绕.NET WinForms ListView 的开源包装器)会自动为您完成这项工作。