本帖最后由 lzl1778 于 2014-10-11 21:54:21 编辑

解决方案 »

  1.   

    Form1 frm = new Form1();
    frm.ShowDialog();
      

  2.   

    不是弹出自定义窗口,是用户控件中MessageBox.Show弹出
      

  3.   

    showdialog就可以对父窗口进行操作
      

  4.   

    MessageBox.Show 有一种调用方式,参数里是有一个IWin32Window类型参数的,用这个就行了
    我的问题实际上还是没解决,因为我的MessageBox.Show是在用户控件的后台进程中弹出的,不能调用父窗口句柄 分太少了,果然。。什么收获都没有。连问题都没看清楚?没看懂?
      

  5.   

    又仔细看了MSDN上的,原来在构造函数里加个CheckForIllegalCrossThreadCalls = false;就可以跨线程调用了,但是不是以安全线程的方式调用