【问题标题】:Cross-thread Winforms control editing [duplicate]跨线程Winforms控件编辑[重复]
【发布时间】:2011-02-03 12:17:12
【问题描述】:

如果正在编辑文本“属于”的代码与包含 windows 窗体的线程不同,我如何编辑 windows 窗体元素中的文本?我得到了例外:

跨线程操作无效:控件“textBox1”从创建它的线程以外的线程访问。

谢谢。

【问题讨论】:

标签: c# winforms multithreading


【解决方案1】:

您需要像这样使用Control.Invoke 方法:

textbox1.Invoke((MethodInvoker)(() =>
   {
     textbox1.Text="some text";
   }));

也请查看这篇文章:Threading in UIs

【讨论】:

  • 在类中插入Action y;并执行代码label1.Invoke(y = () => label1.Text = "Any text");
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-10
  • 1970-01-01
相关资源
最近更新 更多