日期:2014-05-17 浏览次数:20962 次
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);
}