日期:2014-05-17 浏览次数:20953 次
private delegate void flush();
public void F() {
flush f = new flush(aa);
panel.Invoke(f);
}
public void aa() {
panel.Controls.Clear();
panel.Controls.Add(panel1); //报异常
}
private delegate void flush();
public void F() {
flush f = new flush(aa);
//panel.Invoke(f);
//这里要用主线程去调用
this.Invoke(f);
}
public void aa() {
panel.Controls.Clear();
panel.Controls.Add(panel1); //报异常
}
------解决方案--------------------
panel1是在什么位置定义的,看起来应该是访问panel1出现的问题
------解决方案--------------------
private delegate void flush();
public void F() {
flush f = new flush(aa);
panel.Invoke(f);
}
public void aa() {
panel.Controls.Clear();
panel.Controls.Add(panel1); //报异常
}
-----------------
pub void aa()函数改为:
public void aa()
{
flush a=new deldegate()
{
panel.Controls.Clear();
panel.Controls.Add(panel1);
}
panel.invoke(a);
}