WinForm程序如何使用NuGet集成WebView2控件进行混合开发?

2026-05-06 04:502阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计940个文字,预计阅读时间需要4分钟。

WinForm程序如何使用NuGet集成WebView2控件进行混合开发?

系列目录:【更新最新开发文章,点击查看详细】+ WebView2控件应用详解系列博客+ .NET桌面程序集成Web网页开发的十种解决方案+ .NET混合开发解决方案1+ WebView2简介+ .NET混合开发解决方案2

系列目录

WebView2控件应用详解系列博客

.NET桌面程序集成Web网页开发的十种解决方案

.NET混合开发解决方案1 WebView2简介

.NET混合开发解决方案2 WebView2与Edge浏览器的区别

.NET混合开发解决方案3 WebView2的进程模型

.NET混合开发解决方案4 WebView2的线程模型

.NET混合开发解决方案5 WebView2运行时与分发应用

.NET混合开发解决方案6检测是否已安装合适的WebView2运行时

  WebView2组件支持在WinForm、WPF、WinUI3、Win32应用程序中集成加载Web网页功能应用。本篇主要介绍如何在WinForm程序中集成WebView2组价的详细过程。

准备工作

1、安装Visual Studio,建议安装Visual Studio 2022 。

2、安装 WebView2 运行时。下载地址:developer.microsoft.com/zh-cn/microsoft-edge/webview2

关于WenView2运行时版本信息,请参考我的博客《.NET桌面程序应用WebView2组件集成网页开发5 WebView2运行时与分发应用》。

步骤1 新建WinForm项目

第①种项目支模板持.NET Core、.NET5、.NET6等。

第②种项目模板仅支持.NET Framework。

这里选择第一种项目模板。

WinForm程序如何使用NuGet集成WebView2控件进行混合开发?

骤2 安装 WebView2 SDK

NuGet中搜索WebView2

提供了如下详细的版本

如果用于生产环境,建议使用稳定版(没有标记-prerelease),学习研究时可以使用预发行版。

选择最新稳定版进行安装,安装成功后,项目的包中添加了 1.0.1185.39 版本的 SDK。

步骤3 设置页面功能

1、顶部区域放置了一个文本框,用于输入目标网址。右侧“访问”按钮用于导航到目标网址。

2、顶部区域WebView2控件用于加载目标网址内容。

步骤4实现导航逻辑

运行效果如下:

两种导航方式都可以成功

webView2.CoreWebView2.Navigate(url);

webView2.Source = new Uri(url);

特别提醒:输入的URL地址,如果不是以 或者 开头则会运行报错

点击按钮

异常: 无效的URI:无法确定URI的格式。

异常:值不在预期范围内。

更友好的做法是自动判断,并补全URL前缀

再次测试

系列目录

成在管理,败在经验;嬴在选择,输在不学! 贵在坚持!

欢迎关注作者头条号 张传宁IT讲堂,获取更多IT文章、视频等优质内容。

个人作品

BIMFace.SDK.NET

开源地址:gitee.com/NAlps/BIMFace.SDK

系列博客:www.cnblogs.com/SavionZhang/p/11424431.html

系列视频:www.cnblogs.com/SavionZhang/p/14258393.html

技术栈

1、Visual Studio、.C#/.NET、.NET Core、MVC、Web API、RESTful API、gRPC、SignalR、Python

2、jQuery、Vue.js、Bootstrap

3、数据库:SQLServer、MySQL、PostgreSQL、Oracle、SQLite、Redis、MongoDB、ElasticSearch、TiDB、达梦DM、人大金仓、 神通、南大通用 GBase

4、ORM:Dapper、Entity Framework、FreeSql、SqlSugar、分库分表、读写分离

5、架构:领域驱动设计 DDD、ABP

6、环境:跨平台、Windows、Linux(CentOS、麒麟、统信UOS、深度Linux)、maxOS、IIS、Nginx

7、移动App:Android、IOS、HarmonyOS、微信、小程序、uni-app、MUI、Xamarin、Smobiler

云原生、微服务、Docker、CI/CD、DevOps、K8S;

Dapr、RabbitMQ、Kafka、分布式、大数据、高并发、负载均衡、中间件、RPC、ELK;

.NET + Docker + jenkins + Github + Harbor + K8S;

出处:www.cnblogs.com/SavionZhang

本文共计940个文字,预计阅读时间需要4分钟。

WinForm程序如何使用NuGet集成WebView2控件进行混合开发?

系列目录:【更新最新开发文章,点击查看详细】+ WebView2控件应用详解系列博客+ .NET桌面程序集成Web网页开发的十种解决方案+ .NET混合开发解决方案1+ WebView2简介+ .NET混合开发解决方案2

系列目录

WebView2控件应用详解系列博客

.NET桌面程序集成Web网页开发的十种解决方案

.NET混合开发解决方案1 WebView2简介

.NET混合开发解决方案2 WebView2与Edge浏览器的区别

.NET混合开发解决方案3 WebView2的进程模型

.NET混合开发解决方案4 WebView2的线程模型

.NET混合开发解决方案5 WebView2运行时与分发应用

.NET混合开发解决方案6检测是否已安装合适的WebView2运行时

  WebView2组件支持在WinForm、WPF、WinUI3、Win32应用程序中集成加载Web网页功能应用。本篇主要介绍如何在WinForm程序中集成WebView2组价的详细过程。

准备工作

1、安装Visual Studio,建议安装Visual Studio 2022 。

2、安装 WebView2 运行时。下载地址:developer.microsoft.com/zh-cn/microsoft-edge/webview2

关于WenView2运行时版本信息,请参考我的博客《.NET桌面程序应用WebView2组件集成网页开发5 WebView2运行时与分发应用》。

步骤1 新建WinForm项目

第①种项目支模板持.NET Core、.NET5、.NET6等。

第②种项目模板仅支持.NET Framework。

这里选择第一种项目模板。

WinForm程序如何使用NuGet集成WebView2控件进行混合开发?

骤2 安装 WebView2 SDK

NuGet中搜索WebView2

提供了如下详细的版本

如果用于生产环境,建议使用稳定版(没有标记-prerelease),学习研究时可以使用预发行版。

选择最新稳定版进行安装,安装成功后,项目的包中添加了 1.0.1185.39 版本的 SDK。

步骤3 设置页面功能

1、顶部区域放置了一个文本框,用于输入目标网址。右侧“访问”按钮用于导航到目标网址。

2、顶部区域WebView2控件用于加载目标网址内容。

步骤4实现导航逻辑

运行效果如下:

两种导航方式都可以成功

webView2.CoreWebView2.Navigate(url);

webView2.Source = new Uri(url);

特别提醒:输入的URL地址,如果不是以 或者 开头则会运行报错

点击按钮

异常: 无效的URI:无法确定URI的格式。

异常:值不在预期范围内。

更友好的做法是自动判断,并补全URL前缀

再次测试

系列目录

成在管理,败在经验;嬴在选择,输在不学! 贵在坚持!

欢迎关注作者头条号 张传宁IT讲堂,获取更多IT文章、视频等优质内容。

个人作品

BIMFace.SDK.NET

开源地址:gitee.com/NAlps/BIMFace.SDK

系列博客:www.cnblogs.com/SavionZhang/p/11424431.html

系列视频:www.cnblogs.com/SavionZhang/p/14258393.html

技术栈

1、Visual Studio、.C#/.NET、.NET Core、MVC、Web API、RESTful API、gRPC、SignalR、Python

2、jQuery、Vue.js、Bootstrap

3、数据库:SQLServer、MySQL、PostgreSQL、Oracle、SQLite、Redis、MongoDB、ElasticSearch、TiDB、达梦DM、人大金仓、 神通、南大通用 GBase

4、ORM:Dapper、Entity Framework、FreeSql、SqlSugar、分库分表、读写分离

5、架构:领域驱动设计 DDD、ABP

6、环境:跨平台、Windows、Linux(CentOS、麒麟、统信UOS、深度Linux)、maxOS、IIS、Nginx

7、移动App:Android、IOS、HarmonyOS、微信、小程序、uni-app、MUI、Xamarin、Smobiler

云原生、微服务、Docker、CI/CD、DevOps、K8S;

Dapr、RabbitMQ、Kafka、分布式、大数据、高并发、负载均衡、中间件、RPC、ELK;

.NET + Docker + jenkins + Github + Harbor + K8S;

出处:www.cnblogs.com/SavionZhang