问题标签 [webview2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4280 浏览

c# - Microsoft Edge WebView2 - 错误:命名空间“Microsoft”中不存在类型或命名空间名称“Web”

我正在编写这个官方教程:WPF 中的 WebView2 入门(预览版)

  1. 已经安装Microsoft Edge (Chromium) Canary channel在我的Windows 10 pro -ver 1903.
  2. 在最新版本上创建了一个.NET Core 3.1 - WPF项目VS2019 - ver16.6.3
  3. 已安装 Nuget 包 Microsoft.Web.WebView2 -Version 0.9.538

但是,根据本教程第 3 步xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf"中的说明,当我在<Window/>标签中添加命名空间并构建 (F5) 应用程序时,我在文件MainWindow.xaml行收到以下错误:using Microsoft.Web.WebView2.Wpf;MainWindow.g.cs

错误

错误 CS0234 名称空间“Microsoft”中不存在类型或名称空间名称“Web”(您是否缺少程序集引用?)

MainWindow.xaml

问题:错误的原因可能是什么,如何解决?

0 投票
0 回答
353 浏览

c# - WinUI 3.0 - UWP:WebView2 打印功能出错

在我的WinUI 3.0 - UWP 项目中,我有一个WebView2显示简单 html 的控件,如下所示。但是当我使用ExecuteScriptAsync调用以下javascript代码时(如下所示),我收到以下错误:

错误

检查您的打印机或选择另一台打印机。您选择的打印机不可用或未正确安装。

错误截图

在此处输入图像描述

备注:我的 Windows 10 的默认Print to PDF打印机没有任何问题,因为我可以从浏览器(MS Edge 或 Google)打印完全相同的 html 页面。

问题:我在这里可能做错了什么,我们可以解决这个问题吗?我认为问题的原因可能与我如何在我的 html 中使用 JavaScript 和/或我如何将参数传递给ExecuteScriptAsync(...)方法有关。注意:wvTest正如您可能已经猜到的,是 WebView2 控件的名称。

代码

//此事件打开Print Dialog并显示如上所示的消息:

0 投票
0 回答
726 浏览

.net - VB.Net WebView2如何复制图像?

我在我的 VB.Net 窗口窗体上使用 WebView2,并且一直在尝试将导航网站上的图像复制到剪贴板并将图像作为位图保存到本地文件夹。过去三天我搜索了很多,但不幸的是找不到正确的解决方案。以下是我尝试过的代码之一。

因为我不太了解javascript,所以可能会导致代码不成功。无论如何,我尝试了很多代码,但仍然无法复制 WebView2 上显示的图像。我会很感激你的帮助。除了 ExecuteScriptAsync,位图(直接保存为 jpg 等)非常受欢迎。我只知道 javascript 是目前处理 WebView2 的唯一方法。

0 投票
1 回答
516 浏览

core - Microsoft Edge 84 发布,但 WebView2 未按承诺工作

我一直在等待 Microsoft Edge 84 的发布,以便按照他们的承诺包含 WebView2。但是在更新 MEdge 之后,WebView2 无法正常工作……

例如,CoreWebView2Ready 从未触发,WebView2 没有显示任何内容,并且在调整大小时抛出异常!

WebView2 只有在目标机器上安装 Canary 通道版本时才能正常工作。

任何帮助将不胜感激。

问候,

0 投票
2 回答
9555 浏览

c# - WebView2 控件未加载 HTML 字符串

WebView2控件:如下所示,通过事件内部的NavigateToString(...)调用成功加载了 HTML 字符串。Button_Click(...)但是我需要在加载Window和/或其加载后立即加载 HTML 字符串GridMainWindow(){...}但是构造函数内部或事件内部的以下代码会rootGrid_Loadded(...)引发如下所示的错误:

问题:我们如何才能解决问题并在HTML string加载Window或加载后立即Grid加载?还是有更好的解决方案/解决方法?

MainWindow.xaml

注意:在以下构造函数中调用 MyLoadHTMLString() 或rootGrid_Loaded(...)事件会引发如下所示的错误:

MainWindow.xaml.cs

注意:以下按钮单击事件successfully将 HTML 字符串加载到WebView2

错误

System.InvalidOperationException HResult=0x80131509 消息=尝试使用 WebView2 功能,这需要在初始化 CoreWebView2 之前使用其 CoreWebView2。首先调用 EnsureCoreWebView2Async 或设置 Source 属性。源=Microsoft.Web.WebView2.Wpf

更新

此MSDN Doc的第二和第三段似乎为此类问题提供了一些解决方案。但我不确定如何实现它

0 投票
1 回答
2285 浏览

c# - 从同一项目中的另一个 XAML 窗口访问 CoreWebView2 时为空

WPF WebView2控件在里面MainWindow.xaml(如下所示)。从内部的按钮单击事件(代码如下所示)调用ExecuteScriptAsync(...)时,它工作正常。MainWindow.xaml.cs但是当WebView2从另一个类AnotherWindow.xaml.cs(在同一个项目中)访问控制并调用相同的ExecuteScriptAsync(...)方法时,它抱怨CoreWebView2为空

问题:我可能缺少什么,如何解决?

MainWindow.xaml

备注1:当按钮及其点击事件在里面时,以下工作正常MainWindow.xaml.cs

下面的调试模式显示CoreWebView2不为空(因此代码有效):

在此处输入图像描述

备注2AnotherWindow.xaml.cs :当按钮及其点击事件在同一个项目的另一个窗口内但访问的WebView2控件时,以下不起作用MainWindow.xaml

AnotherWindow.xaml.cs下面显示的调试模式CoreWebView2不为空(因此引发错误:未设置对象引用):

在此处输入图像描述

0 投票
1 回答
462 浏览

.net - WebView2 中的搜索功能

提前致谢 !

在我的应用程序中,我在 WPF 用户控件中嵌入了一个 WebView2 控件。

是否有任何方法或解决方法可以帮助我在 WebView2 控件中搜索文本?我看到搜索文本框通过 Ctrl + F 打开。我的要求是通过自定义按钮单击来调用此功能。

我发现微软提供的当前 WebView2 预发布 SDK 没有任何特定于查找或搜索功能的东西。

0 投票
10 回答
16342 浏览

c# - 为什么我作为 webView2 对象的 coreWebView2 为空?

我正在创建 Microsoft.Web.WebView2.WinForm.WebView2 的对象,但这个 coreWebView2 的子对象为空

0 投票
0 回答
47 浏览

microsoft-edge - 使用 Edge Dev 浏览器在 Microsoft Teams 中呈现 Office 文档问题

我使用 Office365 帐户使用 Microsoft Edge Dev 浏览器(最后更新)和 Microsoft Teams onLine。我在团队中上传了一个 Word 文件 (docx),如果我想在 Word Online(Microsoft Teams 文档查看器)或 Sharepoint 中打开该文件,我遇到了查看问题。您可以在这里看到黑屏PrintScreen Word Issue

它也不适用于 Office 文档(Word、Excel PowerPoint 文件)。

但它适用于较旧的 Office 文档格式(不是使用 openxml 结构构建的)。所以我认为使用 Microsoft Edge Dev 浏览器在 Microsoft Teams 中查看 openxml 文档存在问题。

我不知道它是否是发布该问题的正确位置。我还在 techcommunity.microsoft.com 的 EdgeInsiderDiscussions 论坛上发布了这篇文章

感谢您考虑。

0 投票
1 回答
230 浏览

.net - “访问被拒绝”或承诺从 WebView2 页面访问 COM 对象时出现的错误

提前致谢。

我无法从 JavaScript 代码与嵌入在 WPF 应用程序中的 WebView2 控件进行通信,因为我看到诸如“访问被拒绝”、“承诺待定”等错误。我不确定什么是错误的,因为这里的一切似乎都是正确的。

这是我的一段代码:

COM 对象:

包含 WebView2 的 WPF 用户控件

开发工具中的 JavaScript 代码 在此处输入图像描述