关于线程创建窗体的问题
我写了个程序里面有个Socket如果接受客户端发送的数据包,服务端要创建一个窗体并按客户端的传入数据格式显示部分信息,由于Socket是异步处理的,那么服务端在收到消息创建窗体的过程中调用form1.show()时,显示的窗体上没有任何控件好像没有被加载过一样,并且timer控件也无效,我查了资料用BeginInvoke好像也没有什么用,对于控件的同步问题我实在不是很了解,windows开发的也不是很多.哪位前辈能帮我解答一下,如何才能使这些不胜感谢!
------解决方案--------------------up
------解决方案--------------------帮顶一下 
------解决方案--------------------在主窗体提供创建新窗体的方法。 
 public void ShowForm(string msg) 
 { 
      this.Invoke(new MessageHandler(ShowForm2), msg); 
 }   
 private void ShowForm2(string msg) 
 { 
      Form2 fm2 = new Form2(); 
      fm2.Show(); 
 }   
 public delegate void MessageHandler(string msg);
------解决方案--------------------在异步接受数据函数中显示也不行? 
 开个线程看看
------解决方案--------------------线程创建窗体不是很难把,关键是你用Socket异步传入参数的时机
------解决方案--------------------学习下