c# 异步更新UI 不阻塞 流畅 Task task = Task.Factory.StartNew(() = { DoLongRunningWork(); // 耗时运算 }); Task UITask= task.ContinueWith(() = { this.TextBlock1.Text = "Complete"; //运算后 赋值 }, TaskScheduler.FromCurrentSyn
c# 异步更新UI 不阻塞 流畅
Task task = Task.Factory.StartNew(() =>
{
DoLongRunningWork(); // 耗时运算
});
Task UITask= task.ContinueWith(() =>
{
this.TextBlock1.Text = "Complete"; //运算后 赋值
}, TaskScheduler.FromCurrentSynchronizationContext());
btnStop.Invoke(new Action(delegate() { this.btnStop.Enabled = false; }));
btnStart.Invoke(new Action(delegate() { this.btnStart.Enabled = true; }));