使用另一个线程更新主GUI显示,反之亦然

时间:2014-01-29 10:32:33

标签: c#

我是C#的新手。我的工作是执行一个从第1步到第3步执行任务的应用程序,并在前面显示一个GUI,其中包含有关其中记录的进度的信息。现在我有以下选项,这将是最好的,我们怎样才能在后台做到这一点。

1. Run the form (consisting of a rich text box) in background thread and put the  task     process in main.
2.Run the form in main pgm and put the task as a function running in background. 

以上哪项是最好的方法。或者有什么比上面更好的东西。如何轻松完成?

1 个答案:

答案 0 :(得分:0)

我从未见过GUI,它由后台线程控制,因为它需要响应 - 事件处理正在主线程上完成。在.net 4.0的winforms中,你有一个BackgroundWorker类,用ReportProgress()方法引发适当的事件,可以在你的主表单中进行(最常见的用途是绘制进度条) - 这是最简单的方法。

http://msdn.microsoft.com/en-us/library/cc221403%28v=vs.95%29.aspx

Similar topic on SO