2010-09-03 84 views
-1

可能重复:
backgroundthread
How do i add values to my list box while my background proccessing is going on?BackgroundWorker的

通过列表我的意思是一个列表Box.i我收集的文件名中的一个数组列表对象,并把同样的列表但不是在BackgroundWorker完成的工作中,我想在模式找到后立即在列表框中显示文件

+0

你读过评论给你[上一个问题](http://stackoverflow.com/questions/3633708/backgroundthread)? – 2010-09-03 07:26:11

+0

请编辑您的原始问题并更新它,而不是重新提问。 http://stackoverflow.com/questions/3633708/backgroundthread – Oded 2010-09-03 07:26:14

+0

其实@Preeti - 看我更新的答案。这应该被关闭,因为你有另一个愚蠢的http://stackoverflow.com/questions/3627967/how-do-i-add-values-to-my-list-box-while-my-background-proccessing-is-继续,你有相同的答案。如果我可以代表你接受Fredrik的回答,我会摆脱列表中的问题。 – 2010-09-03 07:42:43

回答

3

使用BackgroundWorker的ReportProgress方法可以将要添加到列表框中的数据打包并在线程代码中调用它。

然后订阅BackgroundWorker的ProgressChanged事件(通常您的表单将执行此操作) - 展开数据,然后在调用时将其添加到列表框中。

编辑 这与previous question上排名第一的答案完全相同!

因此,虽然最初我并不太担心其他人已经发现的模糊,因为它看起来像他们只是坏的问题 - 事实上,你以前问过一个更好的问题,现在已经用它欺骗了这下一个;只有得到相同的答案!

忽略SO社区的危险!当你给出答案时,不要忽视它再次提出同样的问题! Fredrik值得信赖回答你之前!

如果您不知道如何使用ProgressChanged - 请问另一个问题:“如何使用BackgroundWorker.ProgressChanged事件传输数据?”