我现在已经用Google搜索了一个小时,但找不到合适的答案。
我有一个myClass,其中包含不同的成员,例如字符串Name和一些int Numbers。然后我有一个类型为List的myList,然后我有一个Listbox控件。
我可以使用DisplayMember = "Name"
和DataSource = new BindingList<myClass>(myList.Values)
轻松地在列表框中显示列表。
但我想要的是让我的班级不同成员对其进行排序。我已经尝试创建List的BindingSource并将其传递给Listbox,但是我的Listbox中唯一的条目是“(Enumeration)”(绑定列表的类型,但不是其成员)。
我需要在简单的Listbox控件中显示一个简单的List并让它由T的成员排序?
答案 0 :(得分:1)
BindingList本身并没有实现排序,但是如果你选择实现它,它会为你提供这种功能。 You can inherit from BindingList and start from here。请记住,排序操作可能不应修改原始列表。
现有的实施方式,如BindingListView,也可以满足您的需求。
但是,我发现最简单的方法是使用填充了类成员的DataTable。这将让您免费使用DataView,它已经支持排序,过滤和所有好东西。