最近在制作一个简易的视频播放器,要求支持多中格式比如.mp4;*.mkv;*.avi;*.rm;*.rmvb;*.flv;*.xr等,这里我采用VLCControl插件来实现, 在使用VLCControl的时候,本来想使用单击事件来实现暂停,双击事件来实现最大化,右键来弹出菜单,但是遇到这么一个问题,在还未播放视频的时候,事件是能触发的,但是当我播放视频的时候,这些事件就失效了,之前查了一些资料有说在上面加一个panel,然后用panel的事件来代替vlccontrol的事件,但发现还是有问题,国内的这些资料也很少,后面经过摸索,发现了解决这个问题是需要设置两个属性,在这里跟大伙分享一下
vlcControl1.Video.IsMouseInputEnabled = false;
vlcControl1.Video.IsKeyInputEnabled = false;
第一句是让鼠标点击事件有效,第二句是设置键盘输入有效的设置,这个藏的很深,一般也很难发现,这两句只要放在构造函数即可
public VLCVideoPlayViewer()
{
InitializeComponent();
if (vlcControl1.Video != null)
{
vlcControl1.Video.IsMouseInputEnabled = false;
vlcControl1.Video.IsKeyInputEnabled = false;
}
}