0

我现在已经用谷歌搜索了一个小时,但没有找到有效的答案。

我有一个带有不同成员的 myClass,例如字符串名称和一些 int 数字。然后我有一个 List 类型的 myList,然后我有一个 Listbox 控件。

DisplayMember = "Name"我可以使用和轻松地在列表框中显示列表DataSource = new BindingList<myClass>(myList.Values)

但我想要的是让它可以按班级的不同成员进行排序。我已经尝试创建我的列表的 BindingSource 并将其传递给列表框,但是我的列表框中的唯一条目是“(枚举)”(绑定列表的类型,但不是它的成员)。

我需要什么才能在一个简单的 Listbox 控件中显示一个简单的 List 并使其可由 T 的成员排序?

4

1 回答 1

1

BindingList 本身并不实现排序,尽管它为您提供了您选择实现它的能力。您可以从 BindingList 继承并从这里开始。请记住,排序操作可能不应该修改原始列表。

有现有的实现,比如BindingListView,它也会给你你需要的东西。

但是,我发现最简单的方法是使用填充了类成员的 DataTable。这将让您免费使用已经支持排序、过滤和所有好东西的 DataView。

于 2011-05-04T08:42:23.947 回答