我希望有人能帮助我,我想播放另一个视频文件,但是当我双击另一个视频文件时,它没有播放它,只是显示了第一个视频文件的最后一帧。我不确定我做错了什么。
下面是我的代码
void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
{
string final = "file path";
playfile(final);
}
void playfile(string final)
{
var control = new VlcControl();
var currentAssembly = Assembly.GetEntryAssembly();
var currentDirectory = new FileInfo(currentAssembly.Location).DirectoryName;
// Default installation path of VideoLAN.LibVLC.Windows
var libDirectory = new DirectoryInfo(Path.Combine(currentDirectory, "libvlc", IntPtr.Size == 4 ? "win-x86" : "win-x64"));
control.BeginInit();
control.VlcLibDirectory = libDirectory;
control.Dock = DockStyle.Fill;
control.EndInit();
panel1.Controls.Add(control);
control.ResetMedia();
control.Play(new Uri(final).AbsoluteUri);
}
我试过像这样的东西
control.Dispose();
control.ResetMedia();
control.Update();
control.Refresh();
我甚至尝试过操纵面板,但是没有起作用
谢谢
发布于 2020-06-10 17:19:12
似乎我没有正确清除面板,如果任何人在同样的问题上遇到问题,我使用这个
panel1.Controls.Clear();
panel1.Update();
panel1.Refresh();
发布于 2020-06-10 19:53:02
你不需要每次都销毁/添加一个新控件。您可以使用相同的播放器,只需使用
control.Play(newMedia);
https://stackoverflow.com/questions/62299825
复制相似问题