作者TCBeliever (TCBeliever)
看板C_Sharp
标题[问题] WinForm event 执行完毕後会死当
时间Thu Mar 22 21:02:57 2012
我写了一只winForm程式,背後会呼叫另外一只程式去执行一些东西,
一段code如下:
Form1_Load
{
//do something
//RunProcess();
}
bool RunProcess()
{
myProcess = new Process();
//...
myProcess.Start();
myProcess.EnableRaisingEvents = true;
myProcess.Exited += new System.EventHandler(MyProcessExited);
//..
return true;
}
void MyProcessExited(object sender, EventArgs e)
{
myProcess.Close()
//...改变一些UI的值
MessageBox.Show("完成");
//结束
}
但是程式在背景程式结束後,跳出完成之後,UI的部份就会当掉。
请问有没有人知道我的程式写法错在哪?或是犯了哪个设计上的问题?
thanks
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.59.164.109
1F:→ ST9619:改变UI的值时cross thread?? 03/23 04:13
2F:→ ideaup:更改 myProcess.Close() 的执行时机,看看 03/23 08:31
3F:→ TCBeliever:感谢楼上两位,我去尝试一下。 03/23 11:11