2

我有一个DataView应用Sort在它上面。我无法分配/复制to的Sorted状态。DataViewDataTable

使用列“距离”对 DataView 进行排序:

DataTable table=GetData();
DataView view = table.DefaultView;
view.Sort = "Distance";

这很好用。

但是,当我将它分配DataViewDataTable它时*失去排序状态*。

DataTable dt = (view.Table);

DataView 这失去了任何想法的排序状态?如果有问题,请更正我的代码。

所以,我想在不丢失排序状态的情况下分配/复制DataView排序DataTable

4

3 回答 3

4

使用view.ToTable()而不是view.Table. 请看下面的片段

DataTable table=GetData();
DataView view = table.DefaultView;
view.Sort = "Distance";

DataTable dt = view.ToTable();
于 2013-11-12T12:57:45.647 回答
0

您可以直接在 Datatable 本身中获取 dataview 属性。

DataTable table=GetData();
table.DefaultView.Sort="Distance";
table=table.DefaultView.ToTable();
于 2014-12-01T08:48:33.530 回答
0

这是编写单行排序的一种非常有效的方法,该排序维护了DataViewparent 中的排序DataTable

table = new DataView(table, "", "Distance",
                     DataViewRowState.CurrentRows).ToTable()
于 2016-07-01T19:08:46.683 回答