【发布时间】:2011-02-03 12:17:12
【问题描述】:
如果正在编辑文本“属于”的代码与包含 windows 窗体的线程不同,我如何编辑 windows 窗体元素中的文本?我得到了例外:
跨线程操作无效:控件“textBox1”从创建它的线程以外的线程访问。
谢谢。
【问题讨论】:
-
请出示代码....因为这不足以让我们为您提供帮助!
标签: c# winforms multithreading
如果正在编辑文本“属于”的代码与包含 windows 窗体的线程不同,我如何编辑 windows 窗体元素中的文本?我得到了例外:
跨线程操作无效:控件“textBox1”从创建它的线程以外的线程访问。
谢谢。
【问题讨论】:
标签: c# winforms multithreading
您需要像这样使用Control.Invoke 方法:
textbox1.Invoke((MethodInvoker)(() =>
{
textbox1.Text="some text";
}));
也请查看这篇文章:Threading in UIs
【讨论】:
Action y;并执行代码label1.Invoke(y = () => label1.Text = "Any text");