Windows窗体中的异步任务没有返回结果
本文关键字:返回 结果 任务 异步 窗体 Windows | 更新日期: 2023-09-27 17:53:25
有人能给我解释一下为什么这个代码不工作(结果没有分配给文本框的文本属性)
private async Task<string> NumToString(int num)
{
return await new Task<string>(()=>{
return num.ToString();
});
}
呼叫:
private async void button2_Click(object sender, EventArgs e)
{
// TaskScheduler context = TaskScheduler.FromCurrentSynchronizationContext();
var content = await NumToString(1);
textBox1.Text = content;
}
另外,如果我取消注释TaskScheduler行,点击事件被触发,但NumTostring(1)不触发。
您应该启动任务,而不仅仅是创建它:
private Task<string> NumToString(int num)
{
return Task.Run(() => num.ToString());
}