在MDIParent中获取跨线程操作无效

时间:2009-09-09 03:16:20

标签: c# .net multithreading exception-handling mdi

  

可能重复:
  Cross-thread operation not valid

我试图从另一个线程关闭表单的基础。我收到以下错误。

  

System.InvalidOperationException:跨线程操作无效:从创建它的线程以外的线程访问控制'MDIParent'。

以下行:

MDIParent.MDIParentRef.BaseClose();

1 个答案:

答案 0 :(得分:4)

您需要在UI线程上执行操作:

if (InvokeRequired) 
    Invoke(new Action(MDIParent.MDIParentRef.BaseClose));
else
    MDIParent.MDIParentRef.BaseClose();