VS C#WinForms CefSharp 浏览器控件播放视频及视频全屏播放
CefSharp 默认是不支持视频播放的,不过,有大神魔改了dll,可以完美支持视频播放,现在很多资源已经不太好找了,就算找到,也都是基本上需要收费的(下载收费),所以只找到了一个CefSharp for winforms 100.0.23版本的dll,在需要使用网页视频播放的时候,下载安装CefSharp的时候,选择版本100.0.23。dll文件已放在文末。
但是…问题来了,视频播放的时候,无法全屏播放,百度了几天(可能现在需要去Google,百度已经没有什么资源可用了)一直无法实现。
开始一直找的是CefSharp的全屏接口OnFullscreenModeChange,一直在纠结这个,一直在测试,一直没有成功,百度也很少关于这个接口的说明或者说全屏播放视频的文章。
经过几天的搜索,终于,灵光一闪,我为什么一定要用这个接口,换个思路不行吗?
于是….换了个思路,分两部走…
1、给cefsharp 播放页面注入JS,监听判断播放器是否全屏.
document.addEventListener('fullscreenchange', function() {
var isfull = 'nofull';
if (!document.fullscreenElement)
{
isfull = 'nofull';
}
else
{
isfull = 'full';
}
CefSharp.PostMessage(isfull);//回调给VS
},false);
2、VS接收回调,全屏时,设置窗体全屏覆盖任务栏
if (e.Message != null)
{
dynamic eo = e.Message;
if(eo=='full'){
//全屏,设置窗体全屏,web置顶,web全屏
}else{
//退出全屏,设置窗体还原
}
}
测试了下,可以全屏播放了…..
CefSharp视频播放dll下载链接: