C#非UI线程如何和UI线程交互,应该注意哪些
发布网友
发布时间:2023-10-11 17:36
我来回答
共1个回答
热心网友
时间:2024-12-12 14:25
要用委托
否则会出错
例子:
public partial class Form1:Form
{
//先定义一个委托
public delegate void MakeHanddler();
private void btnMake_Click(object sender, EventArgs e)
{
new System.Threading.Thread(new System.Threading.ThreadStart(Make)).Start();
}
private void Make()
{
//委托
MakeHanddler m = new MakeHanddler(MakeFunc);
this.Invoke(m);
}
//非UI线程函数
private void MakeFunc()
{
//这里可以安全的访问UI控件
}
}