从DataView清除排序

时间:2013-07-02 09:17:02

标签: c# wpf dataview

我有dataviewdataview的来源是来自view的{​​{1}}。 sql server已排序。像这样:

Dataview

dv_building.Sort = "bld_number" 与我dataview的{​​{1}}:

datasource

现在我想删除排序datagird1,但我的数据网格视图已更改,因为已删除排序,即DataGrid1.DataSource = dv_building 已返回其默认排序,可能是通过聚簇索引。

如何删除排序,但实际排序仍为dv_building.Sort = String.Empty?有可能吗?

1 个答案:

答案 0 :(得分:1)

我发现这种解决方法可以实现所请求的行为:我可以访问从Datatable派生的类的实现,附加到列的附加列:

Columns.AddRange(
                new DataColumn[N]
                    {
                        ...
                        new DataColumn("Order",       typeof (int))
                    }

在每个数据视图列修改后(列参与排序),我使用订单号枚举此列。当我需要冻结排序时,我将DataView.Sort属性切换到这个" Order"柱。解冻 - dataView.Sort = regularSortCriterion。