使用两个不同的列对BindingSource进行排序

时间:2010-10-15 12:03:09

标签: c# bindingsource

我目前正在尝试修复VS 2008中使用C#的系统中的一些错误。

问题如下:

客户希望对某些控件进行排序。表单由四个控件组成。其中两个用BindingSourceA绑定,另外两个用BindingSourceB绑定。 与BindingSourceA绑定的其中一个控件显示一个代码,另一个控件显示一个名称。 BindingSourceB也是如此。 需要使用代码显示成员/列对Control1进行排序,而需要使用名称显示成员/列对Control2进行排序。对照3和4也是如此。 经过一番探索,我发现 BindingSourceA.Sort =“Code ASC BindingSourceB.Sort =”Code ASC 完成了这项工作。 但我需要的东西是 BindingSourceA.Sort =“Code ASC,Name ASC”,这也是我探索的结果。问题是它对我来说不起作用..它是一个或另一个。我甚至试过 BindingSourceA.Sort =“Code ASC”; BindingSourceA.Sort =“Name ASC”; 但这也没有用..

如果您需要更多信息,请告诉我。

提前致谢

1 个答案:

答案 0 :(得分:0)

数据绑定的排序支持实际上完全取决于底层数据实现,以及它是否支持IBindingList.SupportsSortingIBindingListView.SupportsAdvancedSorting,两者都不支持。就个人而言:只需单独对数据进行排序(可能通过LINQ),然后然后对数据进行数据绑定。避免整个问题,适用于任何数据源。