日期:2014-05-17  浏览次数:20666 次

关于多线程
如何在自己建的线程中访问主线程中的窗体
C# code
 ft.MdiParent = this;
ft为新建线程中实例化的窗体,我已经试过了用Invoke,但还是不行。求指教啊。小弟谢过了。

还有个小问题,自己创建的线程是不是会阻塞Timer控件的运行?

------解决方案--------------------
Invoke怎么不行呢
C# code


public  void RefUI()
        {
            if (InvokeRequired)
            {
                BeginInvoke(new Action(RefUI));
            }
            else
            {
               
//.......操作代码
            }
        }

------解决方案--------------------
http://www.cnblogs.com/mokey/articles/2095457.html
------解决方案--------------------
Timer控件,说的是windows form的控件,这个只要UI线程(也就是你的主线程)阻塞了,Timer控件就会阻塞.
你自己创建的线程访问主线程时是不是会发生阻塞?
------解决方案--------------------
1、子线程中更新UI线程用BeginInvoke
2、Timer控件本身也是一个子线程,是不会阻塞其他子线程的