我有一个带有此循环的过程的线程:
Private Sub SendFiles()
For Each Item As ListViewItem In ListView_Monitor.Items
' do something...
Next Item
End Sub
在尝试阅读 ListView_Monitor 的 Items 集合时,会导致跨线程操作错误
我已经尝试编写正确的委托以避免该错误,但我遗漏了一些内容并且无法使用我的委托,所以现在我将 CheckForIllegalCrossThreadCalls 设置为的 假
有人可以告诉我如何才能成为我需要的操作的正确代表?
答案 0 :(得分:4)
不要在非UI线程上弄乱UI组件,我建议使用Invoke
强制您的代码在UI线程上运行,例如。
ListView_Monitor.Invoke(Sub()
For Each Item As ListViewItem In ListView_Monitor.Items
' do something...
Next Item
End Sub)