Vb.net - 打开表单时的跨线程异常

时间:2015-07-19 18:16:59

标签: c# vb.net multithreading forms

我创建了两个表单,其中一个表单显示最后修改的记录,另一个表单提供当前表单的搜索结果。但有时在搜索记录时#34;没有结果可以发生" ,在那种情况下,我将关闭搜索表单并打开显示表单"

的"最后一条记录

搜索:

菜单查找单击

 frmSearch.Show()
 frm.Hide()

如果没有找到记录,我正在调用"开始调用方法"关闭并显示"表格最后记录"

Me.BeginInvoke(New MethodInvoker(AddressOf CloseMethod))

Sub CloseMethod()
     frmSearch.Close()
     frm.Show()
end sub

但在" Frm.show"我收到错误 - 跨线程操作无效:控制从其创建的线程以外的线程访问

当我将方法更改为

 Sub CloseMethod()
         frmSearch.Close()
         frm.Close()
         frm.Show()
 end sub

我没有收到错误。请任何人帮助我理解为什么我会收到错误。

0 个答案:

没有答案