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

.net - 如何覆盖右键单击 WebView2 控件时出现的 ContextMenu?

如何覆盖右键单击 WebView2 控件时出现的 ContextMenu?

当您右键单击 WebView2 控件时,会出现带有“刷新”、“另存为”等选项的标准上下文菜单。

如何使我自己的 ContextMenuStrip 出现,而​​不是在鼠标右键单击期间出现?

0 投票
2 回答
2882 浏览

.net - WebView2 控件中的打印功能

提前致谢 !

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

是否有任何方法或解决方法可以帮助我打印 WebView2 控件?

我发现微软提供的当前WebView2 预发布SDK 没有任何特定于打印功能的东西。

0 投票
2 回答
1378 浏览

c++ - 如何获得边缘窗口句柄(HWND)?

我使用 CreateCoreWebView2Host() 方法创建了边缘浏览器窗口。此方法获取父窗口句柄并创建子窗口,我们可以在其中导航网页。完成导航后,我需要返回我的窗口句柄,我相信我无法返回。

在 Spy++ 上,我看到“Chrome_WidgetWin_0”、“Chrome_WidgetWin_1”、“中间 D3D 窗口”作为我父窗口的子窗口。哪一个是子窗口句柄?我以为我正在创建一个子窗口。

我尝试使用传递上述类名的 FindWindowEx() 获取窗口句柄。但在我的项目中仍然没有得到预期的结果。所以我怀疑我是否传递了正确的句柄。

现在的问题是,如何获取 CreateCoreWebView2Host 创建的窗口的窗口句柄(HWND)?

0 投票
2 回答
1135 浏览

c# - 使用 Caliburn Micro 将 WebView2 绑定到 ViewModel

我正在使用找到她的指南作为参考:https ://docs.microsoft.com/en-us/microsoft-edge/webview2/gettingstarted/wpf

利用该指南,我能够在我的应用程序中启动 WebView2。现在我正在尝试将代码分离到 ViewModel 中,因为该页面上将有更多元素。该应用程序作为一个整体使用 Caliburn Micro。除了 WebView2 本身,我能够将所有内容绑定到 ViewModel。当我选择 Go 按钮时,它表明 WebView 为空。我尝试手动设置 WebView 但这不起作用。

浏览器视图.xaml:

浏览器视图模型.cs

无论我尝试什么,WebView 都会返回 null 并且我无法更改页面。

0 投票
1 回答
3353 浏览

.net - 通过 WebView2 将对象从 .NET 设置为 JavaScript 代码

提前致谢,

我想为包含在网页中的 java 脚本代码设置一个对象。我在 WPF 窗口中显示此网页,该窗口引用名称为“webView”的 WebView2。

我对 WebView2 很陌生,我不确定如何在 WebView2 SDK 的 AddHostObjectToScript() 方法中传递“名称”和“对象”

这是我尝试过的:

0 投票
2 回答
4174 浏览

c# - 使用 WebView2 - Edge 创建选项卡

当单击 webview2 - C# windows 窗体中的 Edge 中的链接时,请提供代码片段以创建选项卡而不是在新窗口中打开页面。

遵循以下步骤。

  1. 在 C# windows 窗体上拖动 webview2 控件并更新源属性链接:https ://example.com

  2. https://example.com站点在webview2中打开成功

  3. 单击站点中的几个链接 - https://example.com并打开新窗口并寻找在新选项卡中打开这个而不是在新窗口中打开它

  4. 调试代码时,此事件 webView.CoreWebView2.NewWindowRequested 从未命中。如果引发此 webView.CoreWebView2.NewWindowRequested 事件,则 webview 类上没有导航方法可用,并且它在 corewebview2 类上可用,如果我们使用它,则会获得空引用异常。

0 投票
1 回答
414 浏览

c# - 尝试将参数传递给新的 EventHandler

我正在使用 newWebView2将文本插入 Edge 内的文本框中。我有以下事件:

它运行以下代码:

这适用于我正在玩的测试站点。但是,我想将脚本作为字符串变量传递给InputText方法。尝试将其添加到它状态,委托没有过载,例如:

有没有办法重载它来添加参数?

0 投票
1 回答
3213 浏览

microsoft-edge - WebView2 运行时的离线安装程序/固定版本安装程序

路线图对我来说似乎相当不透明。这是计划好的吗?有关于潜在发布日期的任何信息吗?我们需要在不一定连接到互联网的机器上使用 WebView2。不需要完整的浏览器,这就是为什么WebView2 Runtime的想法似乎是可行的方法。但到目前为止,安装程序需要连接到互联网。

0 投票
2 回答
4215 浏览

.net - 等效于 WebView2 中的 WebBrowser.InvokeScript(String, Object[])

提前致谢。

在我的 WPF 应用程序中,我能够使用 WebBrowser 的 InvokeScript(String, Object[]) 方法成功地将消息从 WPF 传递到 JavaScript。我在 Object[] 参数中传递了我的消息,JS 代码很好地接受了它。(见下面的代码)

我如何在 WebView2 中实现相同的功能,有什么方法可以像在 WebBrowser 控件中一样将参数传递给 JS 代码?

窗口.xaml

窗口.xaml.cs

JS代码:

0 投票
0 回答
697 浏览

c# - Microsoft Edge WebView2 - 无法确定 URI 的格式

这篇文章是关于Microsoft Edge WebView2控件的。在此处WebView2WpfBrowser从 github 处理示例时,我在文件文件中的以下代码处收到以下错误。该示例运行良好,除非在我键入 URL 并单击地址栏旁边的按钮时。我输入的网址是:MainWindow.xaml.csaddress barGoMicrosoft.com

错误

System.UriFormatException HResult=0x80131537 Message=无效的 URI:无法确定 URI 的格式。源=System.Private.Uri

代码

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

更新

刚刚注意到如果您不键入full URL format(例如https://www.microsoft.com/),则会发生错误。例如,如果您只键入microsoft.comor ,它就会引发上述错误www.microsoft.com

所以现在,它可能不是一个问题,而是一个错误报告。