私のWindows8appでは、PageのLoadStateをオーバーライドして非同期に設定し、それを使用して、待機しているタスクのデータをダウンロードして解析しています。その後、これらのデータをGridViewにバインドします。
私の処理は非同期で実行されているはずですが、そのタスクでの処理中にすべてのUIがブロックされます。
public class Example
{
// ...
protected override async void LoadState( . . . )
{
await Task.Run(() => downloadAndParseData());
// Update the UI with results
}
private async Task downloadAndParseData()
{
// ...
}
// ...
}
誰かがそれがなぜであり、どのように私がそれを修正することができるかもしれないかについての考えを持っていますか?