我有一个 WinForms .NET 数据网格,其数据源是 List<cLineItem>
称为线。 cLineItem 是一个非常简单的类,具有单位 (int)、描述 (string) 和单位数量 (float) 等属性。
在代码中,我填充行列表,然后设置数据源:
dataGridView1.DataSource = lines;
这会正确填充网格,但是,即使网格中的每一列都设置为可排序,当您单击列标题时,它不会对行进行排序。
最佳答案
在 DataGridView doesn't work by default 中排序,除非您的源明确支持排序。您需要将数据源包装在 SortableBindingList 中。您可以使用此 zip file 中的文件 PropertyComparer.cs 和 SortableBindingList.cs 并像这样使用它:
dataGridView1.DataSource = new SortableBindingList<cLineItem>(lines);
关于winforms - 为什么我的列不会在 winforms .NET 数据网格中排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1672984/