如何在 Visual Studio 工具栏中添加 WebView2 控件?
How can I add WebView2 control in Visual Studio Toolbar?
2019年Visual Studio,使用Nuget
,我安装了Microsoft.Web.WebView2
包。
PM> Install-Package Microsoft.Web.WebView2 -Version 0.9.430
如网上所述,我已经安装了新的 Microsoft Edge Chromium Canary
版本(这很重要)。
现在,当我打开工具箱时,我没有看到任何 WebView2
控件。
在此之前,我安装了 WebView
控件(与旧版 Edge 浏览器一起使用的旧版本)。
安装 WebView
后,该控件立即在工具箱中可见。
但是WebView2
控制不是这样。
我试图在工具箱中手动添加 Microsoft.Web.WebView2
包中的所有控件。
但是 Visual Studio 拒绝加载在以下文件夹中找到的 WebView2Loader.dll
C:\Users\bernard\.nuget\packages\microsoft.web.webview2[=12=].9.430\build\x86
我也尝试过在
中找到的 DLL
C:\Users\bernard\.nuget\packages\microsoft.web.webview2[=13=].9.430\build\x64
是否可以在工具箱中安装 WebView2 控件?
如果是,怎么办?
Is there possible to install WebView2 control in Toolbox ?
恐怕您现阶段得不到想要的结果。
As this link表明webview2不能支持c#项目,只支持C++项目。以后微软会把它应用到.Net项目中。
还有,当你在NuGet包管理器UI上找到这个包时,你发现它与C++有关。
希望用不了多久就可以用在网络项目上了
您现在可以在 C# 中执行此操作。刚刚在 WinForms 中测试过。
https://docs.microsoft.com/en-us/microsoft-edge/webview2/gettingstarted/winforms
您还必须从此处下载浏览器的 Canary 版本:https://www.microsoftedgeinsider.com/en-us/download
您需要确保 select 选中用于按名称搜索包的文本框旁边的复选框 "include prerelease"。然后 select 一个带有预发布标签的版本。
我也遇到了这个问题。我按照入门教程中的说明进行操作:
https://docs.microsoft.com/en-us/microsoft-edge/webview2/gettingstarted/winforms
并安装了 Canary Edge,但控件仍然没有出现。然而,有趣的是 Microsoft.Web.WebView2.WinForms 引用最初没有出现在我的 Windows Form 项目的引用中。它们现在出现了,但不清楚为什么在最初简单地使用 Nuget 安装 Canary 和最新版本的 WebView2 控件后需要执行以下任何步骤。
- reinstalling Canary后,重启Windows
- 清理项目
- 在Manage Nuget packages中,重新安装WebView2 package到低版本(我用的是当前版本的prerelease,0.9.538-prerelease)
经过第三步,WebView2控件的库引用第一次出现在我的项目References中,我可以在Form Designer中使用它们。
注意:尝试将控件更新到 0.9.538 上的发布版本导致引用从引用中消失,并且 WebView2 控件不再可用于窗体设计器。重新安装预发行版解决了这个问题,因此看来 0.9.538 版本支持的范围比其预发行版小。
TL;DR: 不要更新到最新版本的 0.9.538,只需使用 0.9.538-prerelease。
编辑:根据this post you need to use Canary or Dev build of Edge or the Edge WebView2 Preview,无论哪个版本都应该根据发行说明工作。
人们遇到这个问题的主要原因是他们没有安装所需版本的 Edge。
勾选release notes。对于每个版本,你都会看到“最低 Microsoft Edge 版本”。例如,当您安装最新的 WebView2 版本 0.9.579(07/20/2020 发布)时,它需要 Edge 86.0.579.0
但官方 Edge 版本是(那天)84.0.522。
所以答案是:
- 将 Edge 更新为 newer version
- 或使用旧版本的 Microsoft.Web.WebView2。您可能需要为其启用预发布:
重要: 请勿降级!卸载WebView2
Nuget包,重启VS,安装旧版本,为了安全起见。
我最初安装版本 0.9.579 时假设来自 0.9.538 的 pre-release 组件将包含在较新版本中 - 没有这样的运气。看来这些组件目前仅在预发布版本中 - 我安装了 0.9.579-pre-release 并在工具箱中获得了 webview2
即使在使用预发布版本后,它也没有显示在我的 Visual Studio 2017 社区版 16.6.6
的工具箱中
我的解决方案是执行以下操作:
- Right-click 在 Visual Studios
的工具栏上
- Select 'Choose Items...'
- 单击“.NET Framework 组件”选项卡
- 点击'Browse',可能需要等待扫描完成
- 导航到“\packages\Microsoft.Web.WebView2.0.9.538-prerelease\lib\net462”
- Select 适合您的应用程序类型的正确 DLL
- 选择文件后,单击 window
中的 'OK' 按钮
刚刚使用 webView2 v1.0.721-prerelease 尝试了这个并且它正在工作
在制作了一个新的 winforms 项目并安装了 webview2 nuget 包之后,我确实必须在它显示在工具箱中之前进行重建解决方案构建
2019年Visual Studio,使用Nuget
,我安装了Microsoft.Web.WebView2
包。
PM> Install-Package Microsoft.Web.WebView2 -Version 0.9.430
如网上所述,我已经安装了新的 Microsoft Edge Chromium Canary
版本(这很重要)。
现在,当我打开工具箱时,我没有看到任何 WebView2
控件。
在此之前,我安装了 WebView
控件(与旧版 Edge 浏览器一起使用的旧版本)。
安装 WebView
后,该控件立即在工具箱中可见。
但是WebView2
控制不是这样。
我试图在工具箱中手动添加 Microsoft.Web.WebView2
包中的所有控件。
但是 Visual Studio 拒绝加载在以下文件夹中找到的 WebView2Loader.dll
C:\Users\bernard\.nuget\packages\microsoft.web.webview2[=12=].9.430\build\x86
我也尝试过在
中找到的 DLLC:\Users\bernard\.nuget\packages\microsoft.web.webview2[=13=].9.430\build\x64
是否可以在工具箱中安装 WebView2 控件?
如果是,怎么办?
Is there possible to install WebView2 control in Toolbox ?
恐怕您现阶段得不到想要的结果。
As this link表明webview2不能支持c#项目,只支持C++项目。以后微软会把它应用到.Net项目中。
还有,当你在NuGet包管理器UI上找到这个包时,你发现它与C++有关。
希望用不了多久就可以用在网络项目上了
您现在可以在 C# 中执行此操作。刚刚在 WinForms 中测试过。
https://docs.microsoft.com/en-us/microsoft-edge/webview2/gettingstarted/winforms
您还必须从此处下载浏览器的 Canary 版本:https://www.microsoftedgeinsider.com/en-us/download
您需要确保 select 选中用于按名称搜索包的文本框旁边的复选框 "include prerelease"。然后 select 一个带有预发布标签的版本。
我也遇到了这个问题。我按照入门教程中的说明进行操作:
https://docs.microsoft.com/en-us/microsoft-edge/webview2/gettingstarted/winforms
并安装了 Canary Edge,但控件仍然没有出现。然而,有趣的是 Microsoft.Web.WebView2.WinForms 引用最初没有出现在我的 Windows Form 项目的引用中。它们现在出现了,但不清楚为什么在最初简单地使用 Nuget 安装 Canary 和最新版本的 WebView2 控件后需要执行以下任何步骤。
- reinstalling Canary后,重启Windows
- 清理项目
- 在Manage Nuget packages中,重新安装WebView2 package到低版本(我用的是当前版本的prerelease,0.9.538-prerelease)
经过第三步,WebView2控件的库引用第一次出现在我的项目References中,我可以在Form Designer中使用它们。
注意:尝试将控件更新到 0.9.538 上的发布版本导致引用从引用中消失,并且 WebView2 控件不再可用于窗体设计器。重新安装预发行版解决了这个问题,因此看来 0.9.538 版本支持的范围比其预发行版小。
TL;DR: 不要更新到最新版本的 0.9.538,只需使用 0.9.538-prerelease。
编辑:根据this post you need to use Canary or Dev build of Edge or the Edge WebView2 Preview,无论哪个版本都应该根据发行说明工作。
人们遇到这个问题的主要原因是他们没有安装所需版本的 Edge。
勾选release notes。对于每个版本,你都会看到“最低 Microsoft Edge 版本”。例如,当您安装最新的 WebView2 版本 0.9.579(07/20/2020 发布)时,它需要 Edge 86.0.579.0
但官方 Edge 版本是(那天)84.0.522。
所以答案是:
- 将 Edge 更新为 newer version
- 或使用旧版本的 Microsoft.Web.WebView2。您可能需要为其启用预发布:
重要: 请勿降级!卸载WebView2
Nuget包,重启VS,安装旧版本,为了安全起见。
我最初安装版本 0.9.579 时假设来自 0.9.538 的 pre-release 组件将包含在较新版本中 - 没有这样的运气。看来这些组件目前仅在预发布版本中 - 我安装了 0.9.579-pre-release 并在工具箱中获得了 webview2
即使在使用预发布版本后,它也没有显示在我的 Visual Studio 2017 社区版 16.6.6
的工具箱中我的解决方案是执行以下操作:
- Right-click 在 Visual Studios 的工具栏上
- Select 'Choose Items...'
- 单击“.NET Framework 组件”选项卡
- 点击'Browse',可能需要等待扫描完成
- 导航到“\packages\Microsoft.Web.WebView2.0.9.538-prerelease\lib\net462”
- Select 适合您的应用程序类型的正确 DLL
- 选择文件后,单击 window 中的 'OK' 按钮
刚刚使用 webView2 v1.0.721-prerelease 尝试了这个并且它正在工作 在制作了一个新的 winforms 项目并安装了 webview2 nuget 包之后,我确实必须在它显示在工具箱中之前进行重建解决方案构建