在win10以前,浏览器控件有WPF版本webBrowser、Winform版本WebBrowser,浏览器内核为IE。html
win10以后,微软再也不维护原有的WebBrowser,转而推出UWP版本的WebView,能够适配于WPF、Winform程序。web
限制条件:windows
在WPF中引用WebView:浏览器
在NuGet下搜索Microsoft.Toolkit.Forms.UI.Controls.WebView ,点击安装后,直接使用WebView控件就好了。框架
WebView当前已知缺陷:官网列出的缺陷列表Known Issues of the WebView spa
还有值得关注的是WebView在高DPI下显示比例不正常,官网文档上有解决方案.net
同时,WebView若是在后台初始化没法显示网页(若是放Xaml中,正常),调整窗口大小后则正常显示,目测可能由于宽高未自适应(待查找缘由)。orm
针对WebView以上提到的限制条件,只能在Win10中显示。那么是win7/win8环境下浏览器呢?htm
值得点赞的是,官网提供了一个兼容控件WebViewCompatible,不用咱们去作兼容。blog
因此。。。。在win7/win8环境下原有WPF的坑依旧存在,好比透明窗口样式下没法显示问题
固然,若是你的程序主要是在Win10上运行,而后只是兼容win7/win8,WebViewCompatible绝对适合你。
点击下载Demo,查看在不一样windows版本下的效果。
浏览器版本&Windows版本结果对好比下:
缘由:winform版本&WPF版本,已经指定内核为IE浏览器,而IE浏览器内核在透明窗口样式下没法正常显示。
缘由:UWP版本,除了要求.net4.6.2,还要求win10环境。而win10下,WebView的内核为Edge,因此显示正常
缘由:UWP兼容版本,要求.net4.6.2。win10下,WebViewCompatible的内核为Edge,因此显示正常;win7下,WebViewCompatible内核为IE浏览器,因此与WPF版本同样,若是窗口为透明窗口样式则显示空白。