コード例 #1
0
        private void UserControl_UnLoaded(object sender, RoutedEventArgs e)
        {
            Console.WriteLine("CVideo:UserControl_UnLoaded");
            if (isFullScreen)
            {
                mqServer.SendMsg(new VideoControlMessage(currDControl.id, "fullScreenExit"));
            }
            if (isPlaying)
            {
                Video_Pause();
            }
            else
            {
                Video_Pause_ByMessage();
            }
            mqServer.sendMsgEvent    -= Client_ReceiveMsgEvent;
            timelineSliderTimer.Tick -= new EventHandler(TimelineSliderTimer_Tick);
            timelineSliderTimer.Stop();
            hideVideoConsoleTimer.Tick -= new EventHandler(HideVideoConsoleTimer_Tick);
            hideVideoConsoleTimer.Stop();
            vlcControl.SourceProvider.MediaPlayer.EndReached -= Video_Element_MediaEnded;

            Video_Element_Grid.PreviewMouseLeftButtonDown -= Video_Element_Grid_MouseLeftButtonDown;
            Video_Element_Grid.PreviewMouseMove           -= Video_Element_Grid_MouseMove;
            Video_Element_Grid.PreviewMouseLeftButtonUp   -= TimelineSlider_MouseLeftButtonUp;
            Video_Console.PreviewMouseLeftButtonUp        -= Video_Console_MouseUp;

            TimelineSlider.PreviewMouseLeftButtonDown -= TimelineSlider_MouseDown;
            TimelineSlider.PreviewMouseLeftButtonUp   -= TimelineSlider_MouseUp;
            TimelineSlider.PreviewTouchDown           -= TimelineSlider_TouchDown;
            TimelineSlider.PreviewTouchUp             -= TimelineSlider_TouchUp;


            Loaded                  -= UserControl_Loaded;
            Unloaded                -= UserControl_UnLoaded;
            Play_Button.Click       -= Play_Button_Click;
            Fullscreen_Button.Click -= Fullscreen_Button_Click;


            vlcControl.Background = null;
            vlcControl?.Dispose();
            Video_Element.Content = null;

            //logo  关闭按钮  播放按钮  全屏按钮 时间线
            Video_Logo.Source            = null;
            closebtn.Background          = null;
            Play_Button.Background       = null;
            Fullscreen_Button.Background = null;

            Video_Title = null;
            playedTime  = null;
            totalTime   = null;
            Main_Grid.Children.Clear();
            this.Resources.Clear();
            GC.Collect();
        }
コード例 #2
0
 /*
  * 音频播放
  */
 private void Video_Play()
 {
     Video_Play_ByMessage();
     //暂停所有视频
     mqServer.SendMsg(new VideoControlMessage(currDControl.id, "play"));
 }