0
点赞
收藏
分享

微信扫一扫

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件

系列目录     【已更新最新开发文章,点击查看详细】

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 运行时。下载地址:​​https://developer.microsoft.com/zh-cn/microsoft-edge/webview2​​

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

步骤1 新建WinForm项目

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_解决方案

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

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

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

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_02

骤2 安装 WebView2 SDK

NuGet中搜索WebView2

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_.net_03

提供了如下详细的版本

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_WebView2_04 .NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_05 .NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_WebView2_06

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

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

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_解决方案_07

步骤3  设置页面功能

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

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

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_WebView2_08

步骤4 实现导航逻辑

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_.net_09

运行效果如下:

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_解决方案_10

两种导航方式都可以成功

webView2.CoreWebView2.Navigate(url);
webView2.Source = new Uri(url);

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

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_WebView2_11

点击【访问】按钮

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_.net_12

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

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_13

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

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

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_14

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_15

再次测试

.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_16

系列目录     【已更新最新开发文章,点击查看详细】


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



 .NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_17个人作品

    BIMFace.SDK.NET

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


 .NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件_webview_18技术栈


 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;



作者:张传宁   微软MCP、系统架构设计师、系统集成项目管理工程师、科技部创新工程师。

          专注于微软.NET技术(.NET Core、Web、MVC、WinForm、WPF)、通用权限管理系统、工作流引擎、自动化项目(代码)生成器、SOA 、DDD、 云原生(Docker、微服务、DevOps、CI/CD);PDF、CAD、BIM 审图等研究与应用。

          多次参与电子政务、图书教育、生产制造等企业级大型项目研发与管理工作。

          熟悉中小企业软件开发过程:需求分析、架构设计、编码测试、实施部署、项目管理。通过技术与管理帮助中小企业快速化实现互联网技术全流程解决方案。





举报

相关推荐

0 条评论