在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级
2009-07-13 10:41
363 查看
private void menuItemFoo_Click(object sender, System.EventArgs e)
{
System.Threading.Thread thread=new System.Threading.Thread(new System.Threading.ThreadStart(this.Foo));
thread.Start();
}
public delegate void MyDelegate(Form form);
System.Windows.Forms.Form childForm;
private void AddMdiChild(Form form)
{
form.MdiParent=this;
form.Show();
}
private void Foo()
{
childForm=new Form();
//childForm.MdiParent=this; //直接调用会出错
//childForm.Show();
this.Invoke(new MyDelegate(this.AddMdiChild),new object[]{childForm});
}
{
System.Threading.Thread thread=new System.Threading.Thread(new System.Threading.ThreadStart(this.Foo));
thread.Start();
}
public delegate void MyDelegate(Form form);
System.Windows.Forms.Form childForm;
private void AddMdiChild(Form form)
{
form.MdiParent=this;
form.Show();
}
private void Foo()
{
childForm=new Form();
//childForm.MdiParent=this; //直接调用会出错
//childForm.Show();
this.Invoke(new MyDelegate(this.AddMdiChild),new object[]{childForm});
}
相关文章推荐
- 决多线程操作控件时可能出现的异常:“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 解决多线程操作控件时可能出现的异常:“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- [vb.net]解决 "在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级"
- 解决多线程操作控件时可能出现的异常:“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 解决 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级
- 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 错误:在一个线程上创建的控件不能成为在另一个线程控件的父级(处理方法)
- 某个线程上创建的控件不能成为在另一个线程上创建的控件的父级(转)
- 使用线程加载控件,通过delegate创建控件,但仍报错“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 多线程委托之跨线程问题分析--在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke(解决方法已更新)
- MainActivity中为什么不能在自己创建的线程中调用控件的方法?
- c# 解决 Control.Invoke 必须用于与在独立线程上创建的控件交互。在智能设备上的(PDA)
- “线程间操作无效: 从不是创建控件的线程访问它”
- 使用BackGroundWorker在多线程中访问Winform控件,当不是创建这个控件的线程访问控件时,把线程调整到是创建这个控件的线程去控制。,代码为红色的
- windows笔记-创建线程的另一个函数_beginthreadex
- 线程间操作无效: 从不是创建控件“textBox2”的线程访问它。
- 小结“线程间操作无效: 从不是创建控件的线程访问它” 错误的解决方法
- 教你如何解决“线程间操作无效: 从不是创建控件的线程访问它” 转
- 解决"线程间操作无效: 从不是创建控件的线程访问它"
- 线程间操作无效: 从不是创建控件“t1”的线程访问它