Я создаю приложение Metro.
В MainPage.xaml.cs я создаю альбом следующим образом:
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" непосредственно с альбомом. Не имеет значения.
Есть ли быстрое решение этой проблемы? спасибо заранее.
