您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页WebView2简单试用(二)——基本操作

WebView2简单试用(二)——基本操作

来源:爱go旅游网
WebView2简单试⽤(⼆)——基本操作

中简单的介绍了下如何使⽤WebView2控件,本⽂这⾥介绍下它的常⽤操作:页⾯跳转:

页⾯跳转可以通过webview的接⼝来实现:

webView.Source = new Uri(\"http://www.baidu.com\"); webView.NavigateToString(\"

hello world

\");

这两个⽅法本⾝只是⼀个封装,具体的实现在类型为CoreWebView2的webview.CoreView2属性⾥⾯,基本⽰例如下: if (webView.CoreWebView2 == null) {

await webView.EnsureCoreWebView2Async(); }

webView.CoreWebView2.Navigate(\"https://www.cnblogs.com/tianfang/\");

要注意的是前⾯的EnsureCoreWebView2Async函数,默认情况下,CoreView2是没有初始化的。 其它操作

其它常⽤的操作在WebView2控件中已经做了⽐较好的封装,这⾥就不多介绍了。     

页⾯跳转事件

WebView2常⽤的页⾯跳转事件有:

NavigationStartingSourceChangedContentLoadingHistoryChanged

NavigationCompleted页⾯事件触发流程如下:

更多事件可以参考API⽂档: 调试:

WebView2默认是集成了的,默认调出的⽅式也和chrome是⼀样的:

快捷键F12.

快捷键Ctrl+Shift+I.右键菜单中的\"检查\"

这给我们调试提供了⾮常⼤的⽅便。

执⾏脚本:

执⾏脚本可以使⽤ExecuteScriptAsync函数, 在WebView和CoreWebView2上都有。 webView.CoreWebView2.ExecuteScriptAsync(\"3+2*5\");

⾼级的函数还是在CoreWebView2上。例如,可以使⽤AddScriptToExecuteOnDocumentCreatedAsync注⼊需要执⾏的js到每⼀个页⾯。

await webView.EnsureCoreWebView2Async();

await webView.CoreWebView2.AddScriptToExecuteOnDocumentCreatedAsync(\"alert('hello world')\");

另外,还有⼀种反向执⾏脚本:就是在浏览器⾥的前端页⾯执⾏JS脚本,调⽤宿主程序的函数。这种场景可以使⽤AddHostObjectToScript函数,如下是⼀个简单的⽰例:⾸先定义需要注⼊的对象,

[ComVisible(true)] public class Bridge {

public string Func(string param) => \"Example: \" + param; }

然后,调⽤AddHostObjectToScript函数注⼊对象,

webView.CoreWebView2.AddHostObjectToScript(\"bridge\", new Bridge());然后,在前端程序就可以通过chrome.webview.hostObjects获取注⼊的对象了。

这个功能本⾝的内容较多,更详细的介绍可以参看官⽅⽂档:

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务