Beispiel #1
0
        /// <summary>
        /// 點擊任一集的動畫播放按鈕
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ListBoxItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            AnimationVodObject animationVodObject = ((ListBoxItem)sender).DataContext as AnimationVodObject;

            // 開啟影片視窗並播放
            this.Dispatcher.BeginInvoke(new Action(() =>
            {
                MainWindow mainWindow = Application.Current.MainWindow as MainWindow;
                mainWindow.Flyout_Animation.IsOpen = false;
                mainWindow.Flyout_Video.Content    = new VideoPlayerUserControl(animationVodObject);
                mainWindow.Flyout_Video.IsOpen     = true;
            }));
            // 儲存近期播放
            Task.Run(() =>
            {
                if (this.AnimationViewModel.Animation.Recent_Watch_Index >= 0)
                {
                    this.AnimationViewModel.VodList[this.AnimationViewModel.Animation.Recent_Watch_Index].Recent_Watch = Visibility.Collapsed;
                }
                animationVodObject.Recent_Watch = Visibility.Visible;
                this.AnimationViewModel.Animation.Recent_Watch_Index = this.AnimationViewModel.VodList.IndexOf(animationVodObject);
                UpdateRecentWatch(this.AnimationViewModel.Animation);    // 將近期播放更新到檔案
            });
        }
 public VideoPlayerModel(AnimationVodObject animationVod)
 {
     this.AnimationVod = animationVod;
 }
 public VideoPlayerUserControl(AnimationVodObject animationVodObject)
 {
     this.DataContext = VideoPlayerModel = new VideoPlayerModel(animationVodObject);
     InitializeComponent();
 }