所以我在這裏的一個標籤(「」)。當按鈕(button1)被點擊時,標籤文本變成「測試」。 2秒後,文本被重新設置爲「」。我用一個定時器(它的間隔爲2000)做這個工作:使用異步睡眠在一個線程沒有凍結
private void button1_Click(object sender, EventArgs e)
{
label1.Text = "Test";
timer.Enabled = true;
}
private void timer_Tick(object sender, EventArgs e)
{
label1.Text = "";
}
這個工程;然而,儘管如此,我很好奇它是以異步方式工作的。
我的代碼看起來像這樣目前:
private void button1_Click(object sender, EventArgs e)
{
label1.Text = "Test";
MyAsyncMethod();
}
public async Task MyAsyncMethod()
{
await Task.Delay(2000);
label1.Text = "";
}
這不工作,雖然。
我只是想你的方法,它工作正常,點擊它更改爲「測試」 2秒後它更改爲「」 –
你能否闡述的:「這不行」?你在期待什麼,你觀察到了什麼?編譯器錯誤?異常堆棧跟蹤? –