2014-05-10 150 views
2

我做了一個C#Windows窗體應用程序在Visual Studio 2012,並從這個網頁添加DLL文件:http://vlcdotnet.codeplex.com/ 我已經得到的視頻與此代碼工作:顯示視頻

VlcControl player = new VlcControl(); 
Vlc.DotNet.Core.Medias.MediaBase media = new 
    Vlc.DotNet.Core.Medias.PathMedia(@"path\movie.avi"); 
player.Media = media; 
player.Play(); 

但是,顯示器它在另一個窗口,我無法控制。我如何將視頻嵌入到我的表單中?

我還沒有找到任何關於如何以編程方式執行此操作的文檔。教程中的大多數人在他們的工具箱中列出了某種vlc控件,但我沒有,所以我需要用代碼來完成。

我一直在使用面板VlcControl的父母嘗試:

player.Parent=panel1; 

電影仍然發揮,但沒有視頻,唯一的聲音。 我應該使用什麼樣的容器,以及如何讓它顯示視頻?

更多信息: 這裏:VLC.DotNet Control Hosted in WPF據說可以將視頻嵌入到WPF中的WindowsFormsHost元素中。但是,在Windows窗體應用程序中,我只能使用ElementHost。我可以用它來嵌入視頻嗎?如果是,如何?

+0

你有'VlcContext'實例嗎? –

+0

@Asad是的。我該怎麼處理它? – kren470

+0

沒什麼,我只是檢查你是否初始化了它。 –

回答

5

我找到了解決方案。我需要將player添加到面板的控件並設置播放器的大小。在這裏,如果有人會需要它:

player = new VlcControl(); 

panel1.Controls.Add(player); 

player.BackColor = System.Drawing.Color.Black; 
player.ImeMode = System.Windows.Forms.ImeMode.NoControl; 
player.Location = new System.Drawing.Point(0, 0); 
player.Name = "test"; 
player.Rate = 0.0F; 

player.Size = new System.Drawing.Size(1024, 768); 

Vlc.DotNet.Core.Medias.MediaBase media = new 
    Vlc.DotNet.Core.Medias.PathMedia(@"path\movie.avi"); 
player.Media = media; 
player.Play();