问题标签 [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 投票
0 回答
2735 浏览

c# - WPF WebView2 - 无法禁用上下文菜单

环境Windows 10 Pro - ver. 1903,,,VS2019 latest version_WPF Core

当我在WebView2HTML控件内显示的页面上有一个手动控件时,我可以通过简单地将其作为属性添加到标签来禁用上下文菜单。但在大多数情况下,网页是基于用户交互(用户导航到什么页面等)来显示的。oncontextmunu={return false;}<body>

问题:我们如何禁用 WebView2 控件中显示的网页的上下文菜单?

备注

  1. 我注意到,在某些情况下,JavaScript 与网页一起加载,oncontextmunu={return false;}即使我以编程方式将此属性添加到body加载页面的标记,也不会禁用上下文菜单。我看到Microsoft.Web.WebView2.Core.CoreWebView2SettingsAreDefaultContextMenusEnabled的属性,但不识别.VS2019WebView2
  2. WebBrowserherehere所述,WPF的旧控件存在类似问题,WebView2也有类似的情况。
  3. 根据此Microsoft 链接的第 5 条,问题已解决。但是那里的解决方案似乎与C++我使用C#. 也许,有一个替代方案。
0 投票
3 回答
2187 浏览

c# - 如何在 WPF WebView2 中禁用 CORS

我正在开发一个使用 .Net5/WPF 显示 WebView2 的应用程序。
我想禁用 CORS。
我已经安装了 Chromium Edge Canary 86.0.607.0。
在 Edge 中,可以通过将以下参数添加到快捷方式来禁用 CORS。

--disable-web-security --user-data-dir="C://Chrome dev session"

我也想禁用 WebView2。

0 投票
1 回答
887 浏览

activex - 是否有对 Webview2 控件的 ActiveX 支持

新的 webview2 控件基于最新的边缘,基于 chrome。在 Edge 中有一个 IE 模式来支持 active x。我们是否可以选择在 webview2 控件中使用 IE 模式,以便我们可以 webview2 控件支持 activeX

0 投票
2 回答
657 浏览

c++ - WebView2 - 如何从 BLOB URL 读取数据?

如何从 WebView2 中的 BLOB Url 将数据作为文本读取?我已经尝试了来自 Javascript 的 WebView2 回调,但我无法使其工作。我很欣赏它是否是 Javascript 解决方案,但我更喜欢 C++。

0 投票
1 回答
204 浏览

c++ - Webview 2 图标未显示在 Visual Studio 工具箱中

出于某种原因,在尝试了我在互联网上找到的所有解决方案之后,Webview 2 工具没有显示在工具箱中。

我已经安装并升级了 Visual Studio、Microsoft Edge 和 Microsoft Edge Canary,但似乎没有任何帮助。

我正在使用 Visual Studio 2019 版本 16.7.2

Webview 2 9.538(预发布,正如其中一个答案所建议的,我也尝试了所有其他版本)。

我已经下载并安装了 Edge Canary 版本 87.0.629.0。

Edge 的版本是“85.0.564.44‏”。

任何的想法 ?

‏</p>

0 投票
0 回答
251 浏览

wpf - 在 vs2015 和 32 位应用程序上使用 Chromium Edge WebView2(我有限制)

有没有人成功在 vs 2015 - 32 位应用程序上使用 WebView2 和 chromium Edge?

我在 vs2015 上尝试了 WPF .Net 4.8 示例,它仅在 64 位上工作,我也在 vs2015 上尝试了 c++,但我没有成功使它工作:-(

我尝试最新版本和预发布版本。(v0.9.628)

如果有人成功并且可以分享代码片段,我会很高兴:-)

谢谢奥伦

0 投票
1 回答
268 浏览

.net - 等效于 WebView2 中 CEF 的 OnLoadingStateChange

在承载 WebView2 控件的 WPF 应用程序中,我想跟踪浏览器的加载状态,就像 CEF 中的“OnloadingStateChange”一样。

我怎样才能在 WebView2 中实现同样的目标?

0 投票
1 回答
3206 浏览

c++ - 管理/删除工作 WebView2 的 cookie

我正在运行 Edge WebView2,其中加载了一些登录页面。我想做一个自动登录。

为此,我需要删除当前的 cookie。我不能通过 js 做到这一点,因为它们是 httponly。对于 Edge beta 浏览器,我编写了简单的 Chrome 扩展来删除 cookie,但我无法在 WebView2 中运行扩展(或者可以?)。

我也知道 WebView2 cookie 文件的位置,但在 Webview 运行时我无法更改它。

在 WebView 中做到这一点的唯一方法是打开 DevTools,我在应用程序选项卡中删除了它们。

有关如何删除该 cookie 的任何想法?


我希望至少在c++中使用自定义标头(我可以在其中指定 cookie)加载 WebView2 页面的示例。

0 投票
1 回答
623 浏览

c# - 此页面有问题。c# Webview2

我在 VS 2019 中构建了一个 C# windows 窗体应用程序,其中包括 Webview2(最新预发行版)来创建浏览器。应用程序加载页面并检查特定内容。如果内容不存在,它会重新加载页面。如果内容在那里(尚未发生),它会填写一些字段并单击一个按钮。

该应用程序运行良好一段时间。现在每隔一段时间我就会在 Webview2 控件中得到以下信息:

此页面有问题。请稍后再回来

您还可以: 打开一个新选项卡 刷新页面

错误代码:STATUS_ACCESS_VIOLATION

我在调试模式下运行应用程序以尝试捕获错误。捕捉也不例外。如果我在控件的ContentLoading事件中放置一个断点Webview2,它在我看到这个错误页面之前永远不会触发。我不确定是什么触发了它或如何阻止它。

在 Form_load 我调用以下内容:

并且ContentLoading会调用下面的函数来尝试在页面加载时检查内容,以便在页面完全加载之前做出决定。现在它只是触发我们不想要的按钮。这是代码:

似乎在重新加载时出现了错误页面。

通过删除 WebView2 prelease 0.9.682 并安装 prerelease 0.9.579 解决了以下问题

我有一个随机弹出的新问题。应用程序冻结await wv2Dig.EnsureCoreWebView2Async();在一个调用的函数中Form_Load

0 投票
1 回答
2515 浏览

chromium - 访问WebView2新打开的窗口

如果我运行window.open("url")它将在新的弹出窗口中打开 url ,即使它是 Edge WebView2。它只有默认的 Windows 标题栏和只读 url 栏。我需要在新的弹出窗口中通过window.open("url").

有什么方法可以从我的程序访问该窗口,直到原始 WebView2 子窗口?通过访问我的意思是注入脚本,并在注入后获得 js-response。

或者,至少,也许有办法用一些预先注入的脚本打开 url,比如window.open("http://google.com -javascript: alert(5)")


更新

找到MSDN 文章,可能这就是我需要的。试图理解这一点。