读书人

关于线程创建窗体的有关问题

发布时间: 2012-01-06 22:55:18 作者: rapoo

关于线程创建窗体的问题
我写了个程序里面有个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异步传入参数的时机
[解决办法]
学习下

读书人网 >C#

热点推荐