要在Winform中實現異步加載窗體,可以使用Task
類來實現。以下是一個示例代碼:
private async void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
await Task.Run(() =>
{
// 模擬耗時操作
System.Threading.Thread.Sleep(3000);
});
form2.Show();
}
在上面的示例中,當點擊button1
按鈕時,會創建一個Form2
窗體,并通過Task.Run
方法在另一個線程中執行耗時操作。在操作完成后,再將Form2
窗體顯示出來。
需要注意的是,由于Winform是單線程模型,所以在異步加載窗體時需要確保對UI線程的訪問是安全的。