private async void DownloadMultipleBtn_Click(object sender, RoutedEventArgs e)
        {
            var dialog = MutipleDownloadDialog.Create(_master.EpisodeList,
                                                      b =>
            {
                var item = new MutipleDownloadDialogItem()
                {
                    Name       = b.Name,
                    Oringin    = b,
                    ToDownload = false
                };
                return(item);
            },
                                                      async(item, quality) =>
            {
                var b    = (BiliBangumi)item.Oringin;
                var dash = await BiliVideoHelper.GetVideoDashStreamAsync(b.Video, Settings.SESSDATA);
                await VideoDownloadManager.CreateDashDownloadAsync(b.Video, dash.TryGetTargetQuality(quality), dash.GetHighestAudioQuality());
            });

            if (await dialog.ShowAsync() == ContentDialogResult.Primary)
            {
                ShowTipWithMessage("批量下载任务已创建");
            }
        }
        private async void SingleDownloadBtn_Click(object sender, RoutedEventArgs e)
        {
            var btn   = sender as DropDownButton;
            var video = (BiliVideo)btn.DataContext;

            if (btn.Flyout != null)
            {
                return;
            }
            btn.Content = new ProgressRing()
            {
                IsActive = true, Height = 20, Width = 20
            };

            BiliVideoDashInfo dashInfo;

            try
            {
                dashInfo = await BiliVideoHelper.GetVideoDashStreamAsync((BiliVideo)btn.DataContext, Settings.SESSDATA);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
                btn.Content = "错误";
                return;
            }

            btn.Content = "下载";
            var flyout = new Windows.UI.Xaml.Controls.MenuFlyout();
            var items  = flyout.Items;

            foreach (var info in dashInfo.Videos)
            {
                var item = new Windows.UI.Xaml.Controls.MenuFlyoutItem()
                {
                    Text        = $"{info.Quality.ToQualityString()}-{info.Codec}",
                    DataContext = info
                };
                item.Click += async(s, args) =>
                {
                    var task = VideoDownloadManager.CreateDashDownloadAsync
                                   (video,
                                   (DashVideoInfo)item.DataContext,
                                   dashInfo.Audios.OrderByDescending(a => a.Quality).First());
                    ShowTipWithMessage($"{video.Name}-{info.Quality.ToQualityString()}-{info.Codec}");
                    await task;
                };
                items.Add(item);
            }
            btn.Flyout = flyout;
            flyout.ShowAt(btn);
        }
        private async void DownloadMultipleBtn_Click(object sender, RoutedEventArgs e)
        {
            var dialog = MutipleDownloadDialog.Create(_master.Videos, v =>
            {
                var item = new MutipleDownloadDialogItem
                {
                    Name       = v.Name,
                    ToDownload = false,
                    Oringin    = v
                };
                return(item);
            }, async(item, quality) =>
            {
                var v    = (BiliVideo)item.Oringin;
                var dash = await BiliVideoHelper.GetVideoDashStreamAsync(v, Settings.SESSDATA);
                await VideoDownloadManager.CreateDashDownloadAsync(v, dash.TryGetTargetQuality(quality), dash.GetHighestAudioQuality());
            });

            if (await dialog.ShowAsync() == Windows.UI.Xaml.Controls.ContentDialogResult.Primary)
            {
                ShowTipWithMessage("批量下载任务已创建");
            }
        }