咱心血来潮,想搞个小东西,琢磨着能不能嵌个网页进去,于是就盯上 WebView 这玩意儿。以前也没咋接触过,就想着边学边做,顺便把这过程记录下来,省得以后忘。
折腾环境
咱啥也不懂,就在网上瞎搜。看到说 WebView2 这东西支持挺多平台的,啥 Win32 C++、WinForm、WPF 都能用。咱平时用 WPF 多点,就决定用它。电脑是 Win11 的,据说这系统自带 WebView2,省咱不少事。
上手试试
环境弄好,就得开始上手试试。咱先建个 WPF 项目,然后就开始琢磨怎么把 WebView 弄进去。
- 打开 Visual Studio,创建一个新的 WPF 应用程序。这步咱熟,就不多说。
- 在“工具箱”里找一圈,没找到 WebView 相关的控件。
- 然后,咱想起来,这玩意儿可能得装个啥包。于是打开 NuGet 包管理器,搜一下 "WebView2",果然有,直接装上。
- 装好之后,再回到“工具箱”,WebView2 控件就出现,直接拖到界面上,调整好大小和位置。
显示个网页
控件有,接下来就是让它显示个网页。这块也简单,找到 WebView2 控件的 Source 属性,直接把网页地址填进去就行。比如,咱想显示个百度首页,就把 Source 属性设置成 "*"。
然后,运行程序,等个几秒钟,WebView2 控件里就显示出百度首页。看着自己弄出来的东西,心里还挺美滋滋的。
更进一步
能显示网页只是第一步,咱还想跟网页做点交互。比如,在网页里点个按钮,然后咱的程序能收到个通知啥的。
这块稍微麻烦点,得写点 JavaScript 代码,然后通过 WebView2 的 ExecuteScriptAsync 方法来执行。咱对 JavaScript 也不太熟,就边查资料边试,折腾好一会儿才搞定。
今天折腾 WebView2,感觉还挺有意思的。虽然中间遇到一些小问题,但最终还是实现想要的效果。以后再遇到类似的需求,就知道该怎么做。
WebView 这东西挺强大的,能让咱的程序跟网页无缝结合,实现很多有趣的功能。以后有时间,还得好好研究研究。