我使用Vlc.DotNet.Wpf播放視頻如何處置VlcControl爲WPF
- 創建VlcControl對象
`
private void CreateVlcObject1()
{
myControl1 = new VlcControl();
myControl1.MediaPlayer.VlcLibDirectoryNeeded+=MediaPlayer_VlcLibDirectoryNeeded;
myControl1.MediaPlayer.EndReached += MediaPlayer_EndReached1;
myControl1.MediaPlayer.EndInit(); myControl1.MediaPlayer.Play(newUri(@"C:\Users\Public\videos\45.mp4"));
MainGrid.Children.Add(myControl1);
}
`
- VlcControl對象的配置方法
`
private void DisposeObject1()
{
myControl1.MediaPlayer.VlcLibDirectoryNeeded -= MediaPlayer_VlcLibDirectoryNeeded1;
myControl1.MediaPlayer.EndReached -= MediaPlayer_EndReached1;
if (!myControl1.MediaPlayer.IsDisposed)
{
myControl1.MediaPlayer.Stop();
myControl1.MediaPlayer.Dispose();
}
myControl1 = null;
MainGrid.Children.Remove(myControl1);
}
`
程序會卡在Dispose方法停止方法但是如果我評論停止方法,將停留在Dispose方法。 不處理這個對象,我不能繼續進一步,因爲它在1分鐘內吃100 MB。
@WolfgangThanks我不想關閉應用程序,所以我覺得shutdownStarted事件是沒有用的我。 – tabby
我在Github論壇上發現,你應該做一個Application.DoEvents(); befor stop: this.vlcControl.Stop(); –
https://github.com/ZeBobo5/Vlc.DotNet/issues/115 –