更改Datagridview BindingSource非常慢

时间:2015-10-12 05:25:08

标签: datagridview bindingsource

尊敬的同行,

我正在处理一个项目的主要问题,请找一些帮助。

概述: 我有一个带有datagridview(Datagridview1)的表单(frmStart)。在frmstart中,我放置了一个绑定源(bs1)。这一个表单接受两个不同查询(q1和q2)的结果。

第一次运行查询(q1)时,绑定源加载异常快。我使用以下内容附上:

frmStart.bs1.DataSource = frmStart.ds.Tables("Data1").DefaultView

我可以继续有效地加载它。但是,如果我尝试运行第二个查询(q2)并将其应用于表单或运行第二个查询然后尝试返回到q1,程序挂起在以下行上,加载时间比原始时间长10倍: / p>

Me.bs1.DataSource = ds.Tables("Data2").DefaultView

我知道它与更改源表有关,因为它也会反过来发生。我的问题是我没做什么导致这个问题。一旦我完成了一个报告,我使用以下内容清除了我的页面,但已经证明这不起作用:

Me.bs1.DataSource = Nothing
Me.bs1.RemoveFilter()

我已经过测试和测试,可以确定过滤器不起作用,只是更改数据源表。有没有人有他们可以抛弃我的解决方案,或者只是朝着正确的方向前进?我做错了什么,或者根本没做什么?

更改绑定源时,是否有正确的程序?

提前致谢。

1 个答案:

答案 0 :(得分:0)

跳到同样的问题,这对我有用:

在对BindingSource执行大量更改之前,应该取消设置BindingSource上的RaiseListChangedEvents属性,如果完成后重置,则应该重置。然后,您可以使用ResetBindings刷新绑定控件。

来自:Using BindingSource is very slow?