显示网页可以通过WebBrowser,WebView2,CafSharp,MiniBlink这四种方式实现。
WebBrowser: WPF自带网页标签,版本太久 IE11 以下版本无法正常显示Html页面,在Win7系统上需要更新IE浏览器,坑太多了,不建议使用。
WebView2:占用内存小,在Win10,11系统上运行没问题,如果Win7、Win8/8.1上是无法直接运行的,需要安装WebView2运行时(https://developer.microsoft.com/zh-cn/microsoft-edge/webview2/)。
不管配置还是使用都是比较方便的,添加dll文件和引用就可以了。
<Page x:Class="MVVM.Views.Page_H5s_WebView2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"
Title="Page_H5s_WebView2">
<!--<wv2:WebView2 x:Name="wv2" Grid.Row="1" Source="{Binding webView2}" />-->
<wv2:WebView2 Source="https://www.microsoft.com" />
</Page>
CafSharp:附加配置文件多占用内存空间大。
直接在NuGet包管理器搜索并安装CefSharp.Wpf包、
MiniBlink:是一个独立的、追求极致小巧的浏览器内核项目。
Miniblink保持了10M左右的极简大小,是所有同类产品最小的体积,同时支持windows xp、npapi。
网上直接搜索Miniblink下载就好了,底层代码应该是.Net5.0版本的如果在.Net4.0上使用的话需要修改一下底层的代码。
引用:xmlns:mini="clr-namespace:WpfMiniBlink;assembly=WpfMiniBlink"
定义:<mini:MiniblinkBrowser Name="mini_b"> </mini:MiniblinkBrowser>
代码: mini_b.LoadUri(@"https://www.miniblink.net/index.html");
这是之前做网页的时候找的几种显示网页的方法,笔记写的有点晚大多细节已经记不清了。如过需要大家可以围绕着那几个点去详细做些了解,多少是有些帮助的。