所有分求解show窗体卡死问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 10:58:10
我的问题是udp广播5566端口,确认在线用户,用tcp来单对单连接,tcp监听8080端口,问题出现了,A-B发送"3"确认图标闪动,双击notifyIcon1弹出对话框,是确定连接就返回"4",聊天窗口.show(),A收到4后 聊天窗口.show(),问题是收到4的那方窗口卡死(聊天窗口没有代码),急

public void addlist(string check)//判断
{
case "3"://确定新消息和图标闪动

timer1.Enabled = true;
NewMsg = true;
break;
case "4"://收到yes打开窗口

MsgForm Msgf = new MsgForm();
Msgf.Show();
break;
}

private void notifyIcon1_DoubleClick(object sender, EventArgs e)
{
try
{
if (NewMsg)
{
timer1.Enabled = false;
if (MessageBox.Show("你的好友" + _str[_str.Length - 1] + "想和

不要在线程timer中直接打开form,跨线程访问是不安去的.
你通过delegate来访问,在msdn上查delegate,有实例代码的

MsgForm窗体load的时候有错误代码导致窗体无法show出来!

造成这样的都是代码造成的,我估计是否你有造成死循环呢?你好好调试下,调试才能很好知道代码错在哪里

在造成卡的循环中加入Application.DoEvents()试试