首页 > 代码库 > 使用Task来实现跨线程更新UI

使用Task来实现跨线程更新UI

    
public partial class Form1 : Form { public Form1() { InitializeComponent();
       var task = Task.Factory.StartNew(() => { for (int i = 0; i < 9999; i++) { UpdateText("测试" + i); Thread.Sleep(1000); } }); }
     public void UpdateText(string text) { if (txt.InvokeRequired)//当前线程不是创建线程 txt.BeginInvoke(new InvokeCallback(UpdateText), new object[] { text });//回调 else//当前线程是创建线程(界面线程) txt.Text = text;//直接更新 } }

 

使用Task来实现跨线程更新UI