For*_*bly 8 c# winforms webview2
我想知道是否有办法阻止 webview2 组件在 win 表单中打开浏览器窗口
我到处找,但没找到,但我确实找到了,但它使用了 XAML/UWP
一页使用了 xaml,但代码无法工作,因为它的 XAML 和我使用 c#
要阻止链接在新窗口中打开,请订阅CoreWebView2_NewWindowRequested
您发现的内容。
为此,最简单的方法是订阅第CoreWebView2InitializationCompleted
一个。
在控件的属性窗口中WebView2
,双击CoreWebView2InitializationCompleted
- 这将自动生成事件处理程序:
现在您添加CoreWebView2_NewWindowRequested
事件处理程序并设置e.NewWindow
为当前的CoreWebView2
.
这是代码(假设您的WebView2
控件被称为webView21
):
private void WebView21_CoreWebView2InitializationCompleted(object sender, Microsoft.Web.WebView2.Core.CoreWebView2InitializationCompletedEventArgs e)
{
webView21.CoreWebView2.NewWindowRequested += CoreWebView2_NewWindowRequested;
}
private void CoreWebView2_NewWindowRequested(object sender, Microsoft.Web.WebView2.Core.CoreWebView2NewWindowRequestedEventArgs e)
{
e.NewWindow = webView21.CoreWebView2;
}
Run Code Online (Sandbox Code Playgroud)
现在链接将在同一窗口(您的WebView2
控件)中打开。