110,566
社区成员
发帖
与我相关
我的任务
分享
private async void button1_Click(object sender, EventArgs e)
{
var process = new Progress<string>(s =>
{
label1.Text = s;
progressBar1.Value = Convert.ToInt32(s);
});
await Task.Factory.StartNew(() => LongWorkTest.LongWork(process), TaskCreationOptions.LongRunning);
label1.Text = "完成!";
}
class LongWorkTest
{
public static void LongWork(IProgress<string> progress)
{
for (var i = 0; i < 100; i++)
{
Task.Delay(50).Wait();
progress.Report(i.ToString());
}
}
}