c# 使用 Vlc.DotNet.Forms 播放第二个视频文件



我希望有人可以帮助我,我想播放另一个视频文件,但是当我双击另一个视频文件时,它不会播放它,只显示第一个视频文件的最后一帧。 我不确定我做错了什么。

下面是我的代码

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();

我什至尝试操纵面板,但没有奏效

谢谢

似乎我没有正确清除面板,如果有人在我使用的相同问题上遇到问题

panel1.Controls.Clear();
panel1.Update();
panel1.Refresh();

不需要每次都销毁/添加新控件。您可以使用相同的播放器并仅使用

control.Play(newMedia);

相关内容

最新更新