-2

我正在尝试将 WebView2 控件合并到 WinForm 应用程序中。此应用程序在多个页面(选项卡、对话框表单)中使用 Web 浏览器,然后我创建了一个自定义控件(在我的示例代码中命名为 WebViewCtrl)将 WebView2 控件与一些按钮(地址文本、下一步、上一个)合并在一起并刷新)。在我将自定义控件添加到主窗口之前,一切似乎都运行良好。当我将控件放在模态对话框窗口中时,当我需要关闭对话框(名为 TestDialog)时,webView2 控件丢失的是父亲仍然暂停在屏幕上。

您可以在一个非常简单的工作示例中检查此行为,我已在 github 中加载了该示例,其中包含重现问题的基本代码:

https://github.com/LeonardoDaga/WebView2-Dialog-Sample

我不明白在处理对话框表单之前是否需要做一些事情来杀死控件。如果您有任何建议,请提供帮助。

4

1 回答 1

1

我下载了您的代码,发现关闭对话框时必须使用Dispose您的代码。UserControl

TestDialog表单中,将以下事件处理程序添加到Form Closed事件中:

private void TestDialog_FormClosed(object sender, FormClosedEventArgs e)
{
    this.userControl11.Dispose();
}

现在WebView2,当您关闭对话框时,将消失。

于 2020-12-28T01:20:33.153 回答