在去年的 Build 大会上,我们引入了 WebView2,这是一个浏览器控件,可以用新的基于 Chrome 的 Microsoft Edge 来呈现 Web 内容(HTML / CSS / JavaScript)。它最初的范围仅限于 C/C++ 应用程序。今天,我们很高兴地宣布 .NET 应用程序的 WebView2 预览版发布了!WebView2 对 .NET Core 和 .NET Framework 都支持。它可以在 WPF、Windows Form 和 WinUI 3.0 应用程序中使用,一直到 Windows 7。

  重要提示:当安装 NuGet 包时,确保选中“Include prerelease”复选框,并选择带有 -prerelease 后缀的版本。否则你将得不到 .NET 的支持。

  以后,我们会根据路线图每6周更新一次 SDK,并会得到大家的反馈。您可以在发布说明中了解最新的更新。

关于控件

在 WebView2 控件家族的帮助下,您可以在桌面 .NET 应用程序中托管 Web 内容,并使用 Web 提供的所有好处来增强它们,例如动态内容、现代用户界面和工具。

过去

最初,我们从基于 Internet Explorer 的 WebBrowser 控件开始,因此不再适合现代 Web 内容。然后我们创建了一个基于 Edge 的控件,叫做 WebView。这个控制只能在 Windows 10 上运行,而且不能被包括在你的 app 里。我们听到您的反馈响亮而清楚,你想要一个现代和一致的控件,支持从 Windows 7 开始的所有 Windows 版本。这就是 WebView2 的诞生。它是基于 Microsoft Edge Chromium 平台,一致地支持从 Windows 7 开始的所有 Windows 版本。它每6周一次更新,使您能够使用最新的功能。

现在

WebView2 支持许多特性,如导航、Web 消息传递(应用程序和 WebView2 控件之间的通信)、本地对象注入(直接从 JavaScript 访问应用程序对象)等等。查看我们的文档以了解更多细节。在微软,我们在很多应用程序中使用 WebView2。一个例子是 Outlook 桌面版的 Room Finder 面板。通过使用 WebView2,我们能够重用来自 Outlook Web UI 的代码,并使其可以直接访问桌面版本。

未来

  目前 WebView2 处于预览状态,我们正在开发 GA 版本。作为这一努力的一部分,我们将支持 Windows Form 和 WPF 的设计器支持,所以你可以喜欢的熟悉的拖放和所见即所得的方式使用。有关更多信息,请参阅我们的路线图。今天已支持 WindowsForm 的 .NET 框架设计器体验,其他的即将来临。

支持的平台

  预览版目前支持以下平台:

      • Win32 C/C++

      • .NET Framework 4.6.2 or later

      • .NET Core 3.0 or later

      • WinUI 3.0

  和以下windows版本:

      • Windows 10

      • Windows 8.1

      • Windows 8

      • Windows 7

      • Windows Server 2016

      • Windows Server 2012

      • Windows Server 2012 R2

      • Windows Server 2008 R2

原文链接

  https://devblogs.microsoft.com/dotnet/bring-the-best-of-the-web-to-your-net-desktop-applications-with-webview2/

【译】使用 WebView2 将最好的 Web 带到 .NET 桌面应用程序中的更多相关文章

  1. Jena 简介:通过 Jena Semantic Web Framework 在 Jave 应用程序中使用 RDF 模型

    简介: RDF 越来越被认为是表示和处理半结构化数据的一种极好选择.本文中,Web 开发人员 Philip McCarthy 向您展示了如何使用 Jena Semantic Web Toolkit,以 ...

  2. web容器线程数和程序中线程阻塞导致 请求超时

    问题描述: web项目启动之后.调用dubbo的远程服务. 但是有个基础服务报错. 当并发访问用户量上来之后. dubbo服务的报错返回 比正常服务慢 不能正常消费服务 清理服务线程. 也就是dubb ...

  3. 使用Flex构建Web和移动参考应用程序

    范例文件 Shopping Cart Sales Dashboard Expense Tracker 需要的其他产品 Android 2.2及更高版本或Android 3.0及更高版本的设备 仅仅在F ...

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

    系列目录     [已更新最新开发文章,点击查看详细] WebView2组件支持在WinForm.WPF.WinUI3.Win32应用程序中集成加载Web网页功能应用.本篇主要介绍如何在WinForm ...

  5. .NET混合开发解决方案8 WinForm程序中通过设置固定版本运行时的BrowserExecutableFolder属性集成WebView2控件

    系列目录     [已更新最新开发文章,点击查看详细] 在我的博客<.NET混合开发解决方案7 WinForm程序中通过NuGet管理器引用集成WebView2控件>中介绍了WinForm ...

  6. Node.js + Web Socket 打造即时聊天程序嗨聊

    前端一直是一块充满惊喜的土地,不仅是那些富有创造性的页面,还有那些惊赞的效果及不断推出的新技术.像node.js这样的后端开拓者直接将前端人员的能力扩大到了后端.瞬间就有了一统天下的感觉,来往穿梭于前 ...

  7. Web 应用程序中的安全向量 – ASP.NET MVC 4 系列

           Web 程序运行在标准的.基于文本的协议(HTTP 和 HTML)之上,所以特别容易受到自动攻击的伤害.本章主要介绍黑客如何滥用应用程序,以及针对这些问题的应对措施.   威胁:跨站脚本 ...

  8. mac版微信web开发者工具(小程序开发工具)无法显示二维码 解决方案

    微信小程序概念的提出,绝对可以算得上中国IT界惊天动地的一件大事,这可能意味着一场新的开发热潮即将到来, 我也怀着激动的心情准备全身心投入其中,不过截止目前,在官方网站上下载的最新版本都无法使用,打开 ...

  9. [转]从网页Web上调用本地应用程序(.jar、.exe)的主流处理方法

    这个方法主要思路是利用自定义URL Protocol来调用应用程序.浏览器在解析到自定义URL Protocol之后,会寻找注册表,然后通过注册表启动相应的程序,然后启动改程序,传入参数.对于我这个项 ...

随机推荐

  1. 新手学习java路线

    关于新手学习java的路线 笔者也是根据这个路线学习的,希望对你们有所帮助. 首先你要确定你是学习java 并且能够踏踏实实的走下去.一定要多学习,我也可以一直陪你走下去的. 笔者一年工作经验,科班毕 ...

  2. 【java学习笔记】LongAdder

    目录 1.背景 2.LongAdder 3.Striped64内部结构 4.LongAdder的add方法解析 5.Striped64的longAccumulate方法解析 6.总结 LongAdde ...

  3. 力扣Leetcode 46. 全排列

    全排列 给定一个 没有重复 数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], ...

  4. Ingress-nginx 与 Nginx-ingress

    一.概述 Ingress-nginx:它是由Kubernetes社区基于Nginx Web服务器开发的,并补充了一组用于实现额外功能的Lua插件,作为“官方”默认控制器支持当然最优. Github:h ...

  5. 《我想进大厂》之mysql夺命连环13问

    想进大厂,mysql不会那可不行,来接受mysql面试挑战吧,看看你能坚持到哪里? 1. 能说下myisam 和 innodb的区别吗? myisam引擎是5.1版本之前的默认引擎,支持全文检索.压缩 ...

  6. Transform与Vector3 的API

    Transform.InverseTransformDirection(Vector3 direction) Vector3.ProjectOnPlane(Vector3 vector, Vector ...

  7. 【HttpRunner v3.x】笔记 ——3. 录制生成测试用例

    在正式手动编写case之前,我们可以先来熟悉下httprunner的录制生成用例功能. 用postman的童鞋都知道,里面有个功能可以将接口转换成代码,可以直接copy过来使用,提升case编写效率. ...

  8. Azure Blob (三)参数设置说明

    一,引言 上一篇将 Azure Blob 存储的时候,有使用到一个 .NET  Core Web 项目,通过代码的方式进行操作 Azure Blob 的数据,接着上一篇的内容,今天继续看一下代码,具体 ...

  9. 每日一道 LeetCode (41):阶乘后的零

    每天 3 分钟,走上算法的逆袭之路. 前文合集 每日一道 LeetCode 前文合集 代码仓库 GitHub: https://github.com/meteor1993/LeetCode Gitee ...

  10. 剑指 Offer 47. 礼物的最大价值

    题目描述 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0).你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格.直到到达棋盘的右下角.给定一个棋盘及 ...