private async void OnPrimaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args) { try { args.Cancel = true; _vm.IsBusy = true; var lrc = await _vm.DownloadAsync(); if (lrc == null || lrc.Sentences == null || lrc.Sentences.Count == 0) { _vm.ResultText = CommonSharedStrings.LrcNotFound; return; } LrcSelected?.Invoke(this, new LrcSelectedEventArgs { Lrc = lrc }); Hide(); } catch (Exception ex) { _vm.ResultText = string.Format(CommonSharedStrings.LrcDownloadFailed, ex.Message); } finally { _vm.IsBusy = false; } }
private async void ClearLyricLinkClicked(object sender, Windows.UI.Xaml.RoutedEventArgs e) { try { if (_vm == null) { return; } await _vm.DeleteAsync(); LrcSelected?.Invoke(this, new LrcSelectedEventArgs { Lrc = null }); Hide(); } catch (Exception ex) { TelemetryHelper.TrackExceptionAsync(ex); } }
private async void ExternalLyricsImportLinkClicked(object sender, Windows.UI.Xaml.RoutedEventArgs e) { if (_vm == null) { return; } var picker = new FileOpenPicker(); picker.FileTypeFilter.Add(CommonSharedStrings.LrcFileSuffix); picker.FileTypeFilter.Add(CommonSharedStrings.TxtFileSuffix); picker.CommitButtonText = CommonSharedStrings.ManualSelectLyricButtonText; var lyricFile = await picker.PickSingleFileAsync(); if (lyricFile == null) { return; } LrcSelected?.Invoke(this, new LrcSelectedEventArgs { Lrc = await _vm.ImportAsync(lyricFile) }); Hide(); }