0

我正在开发一个winforms经常使用数据库的应用程序,我 90% 的表单需要从数据库加载一些初始数据Form_Load

我被告知使用线程来显示表单,然后去获取数据并用数据填充表单,否则客户在邮递员去数据库并返回数据之前看不到表单:)

我以前用线程完成了一些简单的任务,但这种情况让我有点困惑。我有一个 mainForm ,MdiParent其他形式MdiChild如下:

ChildForm child = new ChildForm { MdiParent = Program.mainForm };

和我的 mainForm (MdiParent是静态的Program.cs

不知道该不该用ThreadBackgroundWorker? 其他解决方案?

如果您的友好回复可以帮助我完成此案并增强我不完整的知识,我将非常高兴。谢谢。

4

1 回答 1

1

使用 BackgroundWorker 是最简单的方法。它处理线程问题、捕获异常并在 UI 线程上运行工作完成回调。

如果您使用的是 C# 4.5,那么 await/asych 也是一个不错的方法。

于 2013-01-24T05:28:47.290 回答