内容目录
研究了很久源码,发现了其运行机制。
如果 BlazorWebView 跳转的页面不是 https://0.0.0.0 ,那么就会使用客户端之外的浏览器打开页面。
// 这里的地址允许在浏览器中打开
public static readonly Uri[] URLS = new Uri[]
{
new Uri("https://open.feishu.cn")
};
this.webView.BlazorWebViewInitializing += (s, e) =>
{
this.webView.WebView.CoreWebView2InitializationCompleted += (s, e) =>
{
this.webView.UrlLoading += (s, e) =>
{
foreach (var item in URLS)
{
if (e.Url.IsBaseOf(item)|| e.Url.ToString().StartsWith(item.ToString()))
{
// 设置打开模式
e.UrlLoadingStrategy = UrlLoadingStrategy.OpenInWebView;
break;
}
}
};
};
};
然后导航打开:
WebView.CoreWebView2.Navigate(url)
文章评论