【发布时间】:2010-12-15 01:53:44
【问题描述】:
如何从运行不同类的新线程更新主线程中的文本框和标签。
MainForm.cs(主线程)
public partial class MainForm : Form
{
public MainForm()
{
Test t = new Test();
Thread testThread = new Thread(new ThreadStart(t.HelloWorld));
testThread.IsBackground = true;
testThread.Start();
}
private void UpdateTextBox(string text)
{
textBox1.AppendText(text + "\r\n");
}
}
public class Test
{
public void HelloWorld()
{
MainForm.UpdateTextBox("Hello World");
// How do I execute this on the main thread ???
}
}
我已经查看了此处的示例,但似乎无法正确理解。请有人提供一些好的链接。
我重新开始了,所以我不会弄乱我的代码。如果有人想用我的例子提出一个可行的例子,那就太好了。
另外,如果我必须更新多个对象,如文本框和标签等(不是同时更新),最好的方法是什么,每个文本框都有一个方法,或者有没有办法做到这一点一种方法?
【问题讨论】:
-
欢迎来到 SO。您可以编辑您的问题以添加更多信息,并且您可以将 cmets 留在您提出的问题的答案上(以及在您达到 50 次代表之后的任何内容)。
标签: c# multithreading user-interface