private async void ShowMonthVideoList_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (ShowMonthVideoList.SelectedItem == null) return; VideoMonthInfo info = ShowMonthVideoList.SelectedItem as VideoMonthInfo; //下载 if (SelectBtn.Visibility == Visibility.Collapsed) { if (info.IsSelected) { info.IsSelected = false; UpdateDownloadStatusBySelectedCount(); } else { if (DownloadManager.GetInstance().DownloadingListContains(info.Vid)) { tipText.Text = "正在下载列表中已经包含该项!"; MsgVisibleStoryboard.Begin(); } else if (DownloadManager.GetInstance().DownloadedListContains(info.Vid)) { MessageDialog messageDialog = new MessageDialog("该项下载已完成,是否重新下载?", "重复下载"); messageDialog.Commands.Add(new UICommand("重新下载", new UICommandInvokedHandler(command => { info.IsSelected = true; SelectDownloadBtn.IsEnabled = true; }))); messageDialog.Commands.Add(new UICommand("不要下载", new UICommandInvokedHandler(command => { }))); messageDialog.DefaultCommandIndex = 0; messageDialog.CancelCommandIndex = 1; await messageDialog.ShowAsync(); } else { info.IsSelected = true; SelectDownloadBtn.IsEnabled = true; } } ShowMonthVideoList.SelectedIndex = -1; return; } //播放 ConnectionProfile InternetConnectionProfile = NetworkInformation.GetInternetConnectionProfile(); if (InternetConnectionProfile == null) { tipText.Text = "当前无网络连接,无法播放!"; MsgVisibleStoryboard.Begin(); ShowMonthVideoList.SelectedIndex = -1; return; } else if (InternetConnectionProfile.IsWlanConnectionProfile == false && InternetConnectionProfile.IsWwanConnectionProfile == false) { tipText.Text = "当前无网络连接,无法播放!"; MsgVisibleStoryboard.Begin(); ShowMonthVideoList.SelectedIndex = -1; return; } commandBar.Visibility = Visibility.Collapsed; LoadMediaInfoPanel.Visibility = Visibility.Visible; ThreadPool.RunAsync(async (workItem) => { VideoPlayInfo playInfo = await donet_sdk.getMobileVideoInfo(info.Vid); await dispatcher.RunAsync(CoreDispatcherPriority.Normal, async () => { if (playInfo == null) { tipText.Text = HashMap.MsgCodeMap[MsgCode.Cannot_PlayMedia]; MsgVisibleStoryboard.Begin(); LoadMediaInfoPanel.Visibility = Visibility.Collapsed; commandBar.Visibility = Visibility.Visible; ShowMonthVideoList.SelectedIndex = -1; return; } ListToPlayParam listToPlayParam = new ListToPlayParam { param = monthToListParam, AllVidellist = monthToListParam.AllVidellist.ToList(), PlayInfo = playInfo, isfrommain = false }; LoadMediaInfoPanel.Visibility = Visibility.Collapsed; commandBar.Visibility = Visibility.Visible; await Task.Delay(100); Frame.Navigate(typeof(PlayVideoPage), listToPlayParam); }); }); }
private async void ShowPanel_Tapped(object sender, TappedRoutedEventArgs e) { if (string.IsNullOrEmpty(ShowPanel.CurrentVid) || ShowPanel.isBusy == true) { e.Handled = true; return; } ConnectionProfile InternetConnectionProfile = NetworkInformation.GetInternetConnectionProfile(); if (InternetConnectionProfile==null) { tipText.Text = "当前无网络连接,无法播放!"; MsgVisibleStoryboard.Begin(); e.Handled = true; return; } else if (InternetConnectionProfile.IsWlanConnectionProfile == false && InternetConnectionProfile.IsWwanConnectionProfile == false) { tipText.Text = "当前无网络连接,无法播放!"; MsgVisibleStoryboard.Begin(); e.Handled = true; return; } commandBar.Visibility = Visibility.Collapsed; LoadMediaInfoPanel.Visibility = Visibility.Visible; ThreadPool.RunAsync(async (workItem) => { VideoPlayInfo playInfo = await donet_sdk.getMobileVideoInfo(ShowPanel.CurrentVid); await dispatcher.RunAsync(CoreDispatcherPriority.Normal, async () => { if (playInfo == null) { tipText.Text = HashMap.MsgCodeMap[MsgCode.Cannot_PlayMedia]; MsgVisibleStoryboard.Begin(); LoadMediaInfoPanel.Visibility = Visibility.Collapsed; commandBar.Visibility = Visibility.Visible; return; } ListToPlayParam listToPlayParam = new ListToPlayParam { AllVidellist = allvideolist.ToList(), PlayInfo = playInfo, isfrommain = true }; LoadMediaInfoPanel.Visibility = Visibility.Collapsed; commandBar.Visibility = Visibility.Visible; await Task.Delay(100); Frame.Navigate(typeof(PlayVideoPage), listToPlayParam); }); }); }
/// <summary> /// 在此页将要在 Frame 中显示时进行调用。 /// </summary> /// <param name="e">描述如何访问此页的事件数据。 /// 此参数通常用于配置页。</param> protected override void OnNavigatedTo(NavigationEventArgs e) { listToPlayParam = (ListToPlayParam)e.Parameter; AllVidellist = listToPlayParam.AllVidellist; CurMediaInfo = listToPlayParam.PlayInfo; CurMediaIndex = listToPlayParam.AllVidellist.FindIndex(info => info.Vid == listToPlayParam.PlayInfo.vid); if (DisplayInformation.GetForCurrentView().CurrentOrientation != DisplayOrientations.Landscape) { DisplayInformation.AutoRotationPreferences = DisplayOrientations.Landscape; } HardwareButtons.BackPressed += HardwareButtons_BackPressed; StartLoadVideo(listToPlayParam.PlayInfo); }