private async void ToTodayWeather_Click(object sender, RoutedEventArgs e) { await Task.Factory.StartNew(() => { Dispatcher.Invoke(() => WeatherTommorowGrid.BeginAnimation(Grid.OpacityProperty, AnimWeatherkDown)); Dispatcher.Invoke(() => WeatherTommorowGrid.Visibility = Visibility.Hidden); }).ContinueWith((prevTask) => { prevTask.Wait(); Dispatcher.Invoke(() => WeatherTodayGrid.Visibility = Visibility.Visible); Dispatcher.Invoke(() => WeatherTodayGrid.BeginAnimation(Grid.OpacityProperty, AnimWeatherHigh)); }); }
public async void DataSet() //Для вывода погоды на сегодня/завтра { if (MainVars.InternetConnection == true) { await Task.Factory.StartNew(() => { Dispatcher.Invoke(() => WeatherLoadGrid.Visibility = Visibility.Visible); Dispatcher.Invoke(() => WeatherNoData.Visibility = Visibility.Hidden); weather.GetWeatherNow(); weatherTom.GetWeatherTommorow(); }).ContinueWith((prevTask) => { prevTask.Wait(); Dispatcher.Invoke(() => LoadInfo.Content = "Еще чуть-чуть..."); Thread.Sleep(1000); }).ContinueWith((prevTask) => { prevTask.Wait(); Dispatcher.Invoke(() => SetWearherTommorow()); Dispatcher.Invoke(() => SetWearher()); }).ContinueWith((prevTask) => { prevTask.Wait(); Dispatcher.Invoke(() => WeatherLoadGrid.Visibility = Visibility.Hidden); }).ContinueWith((prevTask) => { prevTask.Wait(); Dispatcher.Invoke(() => WeatherTodayGrid.Visibility = Visibility.Visible); Dispatcher.Invoke(() => WeatherTodayGrid.BeginAnimation(Grid.OpacityProperty, AnimWeatherHigh)); }); } else { WeatherLoadGrid.Visibility = Visibility.Hidden; WeatherNoData.Visibility = Visibility.Visible; } }