跨线程问题

时间:2015-08-27 01:52:35

标签: vb.net

这是我第一次使用背景工作者并遇到“交叉线程”问题。我从未做过任何事情,所以我非常困惑。

问题示例

 Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
    PullIPButton.Enabled = False
        PingAll()

End Sub

按钮次

Private Sub PullIPButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PullIPButton.Click
    If BackgroundWorker1.IsBusy Then
        Exit Sub
    Else
        PullIPs() 'From here, it starts the background worker
    End If

End Sub

错误

单击按钮时会出现以下错误,该按钮启用后台工作程序。

  

跨线程操作无效:从中访问控制'PullIPButton'   一个线程,而不是它创建的线程。

0 个答案:

没有答案