【发布时间】:2013-04-13 12:01:16
【问题描述】:
相信大家都熟悉使用Visual Studio 将数据填充到数据绑定控件中的传统方式。 VS 会创建一个强类型的 DataSet 并在表单加载事件中调用 DataAdapter 的 Fill 函数,如下所示:
this.applications_infoTableAdapter.Fill(this.bITSS_UIT_dBDataSet_tmpApplication.Applications_info, textBox1.Text);
一切都很完美,除非要从数据库中获取大量数据。
当我们在数据库中有超过500K的元组,并且需要在服务器端进行搜索时,即使是sql server也需要一些时间才能返回数据。在这段时间内,Windows 窗体的 UI 变得无响应。
对于大量数据,UI 在相当长的时间内保持无响应,这是不可接受的。
所以,我的问题是,是否有任何异步方式来填充数据,以便 UI 保持响应,并且我们可能会向用户显示加载动画或我们想要的任何其他内容。
我希望我已经说清楚了。
【问题讨论】:
标签: c# .net winforms data-binding asynchronous