下边是在子线程打开子窗口,结果跑到else 里边了跨线程操作窗体控件InvokeRequired失效,无法用于打开子窗体,addonetwo.InvokeRequired,访问不了呢?

大神知道帮忙回答一下?

//if (addonetwo.InvokeRequired)
//{
// addonetwo.Invoke(new MethodInvoker(delegate
// {
// addonetwo.Owner = this;
// addonetwo.Show();
// }));
//}
//else
//{
// addonetwo.Owner = this;
// addonetwo.Show();
//}

查了下资料通过一下方式在子线程中打开子窗体

MethodInvoker MethInvo = new MethodInvoker(ShowForm2);
BeginInvoke(MethInvo);

public void ShowForm2()
{
addonetwo = new AddOneTwo();
addonetwo.Show();
}

完美解决。记下来。

相关文章:

  • 2021-10-03
  • 2022-12-23
  • 2022-01-03
  • 2021-08-14
  • 2021-12-26
  • 2021-11-28
  • 2021-11-04
猜你喜欢
  • 2021-12-18
  • 2022-12-23
  • 2022-12-23
  • 2021-09-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案