【发布时间】:2011-01-06 17:32:59
【问题描述】:
嘿,我正在使用 FastObjectListview,现在我需要对 2 列进行排序。 所以我尝试使用我在the ObjectListview website 上找到的示例,但我无法让它工作。
class MyCustomSortingDataSource : FastVirtualListDataSource
{
override public void SortObjects(OLVColumn column, SortOrder order) {
// do some amazing sorting here
this.RebuildIndexMap(); // you must call this otherwise the control will not work properly
};
};
...
this.myFastObjectListView.DataSource = new MyCustomSortingDataSource(this.myFastObjectListView);
首先我添加了:
using BrightIdeasSoftware;
但该命名空间不包含 FastVirtualListDataSource 它包含 FastObjectListDataSource。
在 FastObjectListDataSource 中,但是没有要覆盖的 SortObjects 方法,有一个我想我应该覆盖的 Sort 方法。
所以这是我得到的,而不是示例代码:
class MyCustomSortingDataSource : FastObjectListDataSource
{
public MyCustomSortingDataSource(FastObjectListView listView)
: base(listView)
{
}
public override void Sort(OLVColumn column, SortOrder sortOrder)
{
base.Sort(column, sortOrder);
// do some amazing sorting here
// base.ObjectList.Sort(new ModelObjectComparer(this.olvGroupCln, SortOrder.Ascending, column, sortOrder));
this.RebuildIndexMap(); // you must call this otherwise the control will not work properly
}
}
我无法访问需要排序的第一列 olvGroupCln,在对该列进行排序后,我需要对用户单击的列进行排序。
我们将不胜感激。
提前致谢。
【问题讨论】:
标签: c# .net winforms sorting listview