Podczas wykonywania funkcji asynchronicznej w celu uzyskania lokalnych danych, uzyskania dostępu do pliku lub wywołania interfejsu API, w jaki sposób uruchamia się animację ładowania podczas tej, prawdopodobnie długiej procedury?Jak wyświetlić animację ładowania dla aplikacji uniwersalnego sklepu Windows Phone 8.1?
Oto przykład:
<Button onClick="Button_Click" />
public async void Button_Click(object sender, RoutedEventArgs e)
{
var myData = await MyDataManager.GetMyData();
await new MessageDiaglog("Data Loaded!").ShowAsync();
}
Ponieważ jest to uniwersalny app store, zakładam, że to powinno działać tak samo w obu oknach 8.1 i Windows Phone 8.1.
UPDATE z roztworu
Per odpowiedź igrali, ja updated mój kod do wykorzystania w przyszłości:
<ProgressBar x:Name="LoadingBar" Visibility="Collapsed" IsEnabled="False" IsIndeterminate="true" Height="4" HorizontalAlignment="Stretch"/>
<Button onClick="Button_Click" />
public async void Button_Click(object sender, RoutedEventArgs e)
{
LoadingBar.IsEnabled = true;
LoadingBar.Visibility = Visibility.Visible;
var myData = await MyDataManager.GetMyData();
await new MessageDiaglog("Data Loaded!").ShowAsync();
LoadingBar.IsEnabled = false;
LoadingBar.Visibility = Visibility.Collapsed;
}
Ten kod będzie działać zarówno na telefonie lub tablecie.
Ok świetnie - więc dla jasności aktywuję/pokazuję przed oczekującym połączeniem, a następnie dezaktywuję/ukrywam po oczekiwaniu na połączenie? – EdenMachine
@EdenMachine dokładnie. –