private void SaveStateButton_OnTapped(object sender, TappedRoutedEventArgs e) { if (App.ChangedPointsList.Any()) { for (int i = 0; i < App.ChangedPointsList.Count; i++) { _composite[i.ToString()] = App.ChangedPointsList[i]; //используем ApplicationDataCompositeValue для автоматической сериализации / десериализации списка } App.LocalSettings.Values["ChangedPointsList"] = _composite; } SoundEffectMediaElement.Play(); }
private async void StartButton_OnTapped(object sender, TappedRoutedEventArgs e) { NextStepButton.IsEnabled = _isLifeCycleRun; ClearButton.IsEnabled = _isLifeCycleRun; SaveStateButton.IsEnabled = _isLifeCycleRun; LoadStateButton.IsEnabled = _isLifeCycleRun; StartButton.Content = StartButton.Content.Equals("Start") ? "Stop" : "Start"; _isLifeCycleRun = !_isLifeCycleRun; SoundEffectMediaElement.Play(); while (_isLifeCycleRun) { MainActions(); await Task.Delay(TimeSpan.FromMilliseconds(DelayBetweenSteps)); } }
private void ClearButton_OnTapped(object sender, TappedRoutedEventArgs e) { if (App.ChangedPointsList.Any()) { foreach (var itemName in App.ChangedPointsList) { try { (MainCanvas.Children.First(x => (x as Rectangle).Name == itemName) as Rectangle).Fill = _whiteColor; } catch (InvalidOperationException) { // ловим exp когда фигура выходит за пределы поля } } App.ChangedPointsList.Clear(); } SoundEffectMediaElement.Play(); }
private void LoadStateButton_OnTapped(object sender, TappedRoutedEventArgs e) { if (App.LocalSettings.Values.ContainsKey("ChangedPointsList")) { _composite = (ApplicationDataCompositeValue)App.LocalSettings.Values["ChangedPointsList"]; App.ChangedPointsList.Clear(); foreach (var item in _composite) { App.ChangedPointsList.Add((string)item.Value); } foreach (var item in MainCanvas.Children.Where(x => (x as Rectangle).Fill == _blackColor)) { (MainCanvas.Children.First(x => x == item) as Rectangle).Fill = _whiteColor; } foreach (var item in App.ChangedPointsList) { (MainCanvas.Children.First(x => (x as Rectangle).Name.Equals(item)) as Rectangle).Fill = _blackColor; } } SoundEffectMediaElement.Play(); }
private void NextStepButton_OnTapped(object sender, TappedRoutedEventArgs e) { MainActions(); SoundEffectMediaElement.Play(); }