私はメトロアプリを構築しています。
MainPage.xaml.cs で、Album を次のようにインスタンス化します。
Album album = new Album(2012); //With the album ID as its parameter.
ListView1.ItemsSource = album.Songs;
Album.cs では、コンストラクターは次のようになります。
public Album(int ID)
{
this.ID = ID;
Initialize(); //Serves as a wrapper because I have to call httpClient.GetStreamAsync() and "async" doesn't work for the constructor.
}
最後に、Initialize メソッド:
private async void Initialize()
{
//...some code...
HttpClient cli = new HttpClient();
Stream SourceStream = await HttpClient.GetStreamAsync("http://contoso.com");
//...some code...
this.Songs = Parse(SourceStream);
}
問題は、GetStreamAsync を実行するときにListView1.ItemsSource = album.Songs
、album.Songs null を直接使用することです。
この問題の迅速な解決策はありますか?