.NET/WinForms - 清除DataGridView上的排序

Bud*_*Joe 9 .net grid datagridview gridview-sorting winforms

告诉DataGridView停止排序的正确方法是什么?

我有一个"屏幕",我以编程方式告诉网格按第4列排序并按升序排序.当我切换到另一个区域时,我希望相同的网格进入"默认"/无排序.我正在删除所有列并添加新列.排序仍在第4列.

我没有看到使用Sort()方法执行此操作的方法.有任何想法吗?

Ken*_*Ken 7

我直接访问了BindingSource上的排序:

((BindingSource)_dgv.DataSource).Sort = string.Empty;


Jos*_*ake 6

来自MSN论坛:

DataGridView直接绑定到DataView而不是Table,因此您需要设置:

DataTable.DefaultView.Sort = String.Empty

有效地清除表格上的排序,从而清除绑定到它的网格.这似乎需要刷新DataGridView,除非您使用的是2005,然后您可以使用单独的绑定管理器.


Hen*_*man 1

这不是一个直接的答案,但“未排序”当然没有好的定义。您不能对(隐藏)列(例如 ID)进行排序吗?