我試圖讓我的頭腦圍繞着設計一個在長時間運行的任務正在執行時保持響應的用戶界面。Windows應用商店應用用戶界面 - 不響應
爲此,我在VS2012創建了一個簡單的應用程序,並加入以下類到它:
using System.Threading.Tasks;
namespace TaskTest
{
class Class1
{
public async Task<int> Async()
{
//simulate a long running process
for (long x = 0; x < long.MaxValue; x++) { }
return 1;
}
}
}
我然後改性正是如此的主網頁的LoadState的()方法:
protected override async void LoadState(Object navigationParameter, Dictionary<String, Object> pageState)
{
await DoLongRunningProcess();
}
private async Task DoLongRunningProcess()
{
var id = 0;
id = await new Class1().Async();
await new MessageDialog(id + "").ShowAsync();
}
我希望頁面在該進程執行時保持響應。但是,當我運行此代碼時,該頁面需要很長時間才能加載。我究竟做錯了什麼?
TIA