【发布时间】:2014-01-31 18:25:07
【问题描述】:
如何在 VB.Net 中调用 for 循环?
例子:
For Each listViewItem As ListViewItem In Me.TaskListView.Items
Me.ExecuteTask(listViewItem, False)
Next
所以需要调用它,但我该怎么做呢?我不确定如何。这是在我的后台工作程序处理程序中,并且在其中时会导致 InvalidOperationException。该错误的额外信息是:“跨线程操作无效:控件'TaskListView'从创建它的线程以外的线程访问。”
错误发生在这一行:
For Each listViewItem As ListViewItem In Me.TaskListView.Items
【问题讨论】:
-
InvalidOperationException?你是在修改
ExecuteTask里面的listViewItem吗? -
是的,我是。请记住,当不在后台工作人员内部时它可以工作。编辑:它还在第一行(“for each”)行显示错误。
-
发布回溯以及失败的确切行会有所帮助。通常,当您在迭代期间修改可迭代对象时会失败。
-
我编辑了我之前的评论,说明它失败的地方,(在第一行),但我怎样才能获得回溯?
-
只是额外的,它不仅说 InvalidOperationException,而且这是额外的位:“跨线程操作无效:控件'TaskListView'从创建它的线程以外的线程访问。 "
标签: vb.net multithreading winforms loops