使用Task来实现跨线程更新UI
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用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的主要内容,如果未能解决你的问题,请参考以下文章