2009-01-07 85 views
1

我在VB.Net模拟旧应用程序的功能。我的窗体上有一个绑定到BindingSource的DataGridView。我在工具栏上有一个按钮,可以打开一个排序对话框。排序对话框允许最多3列排序。DataGridView,BindingSource和在VB.NET中排序

所以我从对话框的结果中建立一个字符串,并用它设置BindingSource.Sort属性。但是这不会更新我的DataGridView。我错过了一个步骤 - 我需要告诉一些东西刷新吗?

回答

3

我只是用一个简单的测试应用程序来测试它,并且它无需调用任何刷新即可排序。你可以发布一些代码吗?你确定你正在建立正确的排序字符串吗?

+1

答案是,它工作正常 - 我做了一些愚蠢的事情。太糟糕了,我不能让所有人都看着我的肩膀。 – ScottStonehouse 2009-01-07 20:36:02

1

您是否需要调用DataGridView.DataBind()方法?

我很习惯ASP.NET,我忘了WinForms的东西。

0

什么是底层对象,它支持排序?您可以通过.SupportsSorting属性(iirc)进行检查。如果它是一个数据表,那么你应该没问题。

您是否尝试将排序直接应用到网格?

更新sort属性后,您可以尝试致电BindingSource.ResetBindings(false),以确保安全,但您不必这样做。