gpt4 book ai didi

c# - Web 浏览器控件 - 检测何时调用 js window.close

转载 作者:太空狗 更新时间:2023-10-29 23:53:29 25 4
gpt4 key购买 nike

我已经搜索了很多小时,但找不到可行的解决方案。

当调用 js 函数关闭窗口时,我的 c# webbrowser 控件(winforms 应用程序的一部分)卡住。

我可以捕获 js window.close 事件吗?

我找到的最接近的解决方案如下,但它无法正常工作(编译器不会抛出任何错误):

HtmlDocument htmlDocument = this.webBrowser1.Document;
htmlDocument.Window.Unload += new HtmlElementEventHandler(Window_Unload);

方法:

    void Window_Unload(object sender, HtmlElementEventArgs e)
{
MessageBox.Show("Display me when webbrowser control is disposed");
}

这只是我的第二个 c# 程序,也是我第一次无法自己找到可行的解决方案。

最佳答案

在由WinFroms WebBrowser 控件包装的原始WebBrowser ActiveX 控件中,有WindowClosing。为此事件。不幸的是,it doesn't get fired for the WinForms wrapper ,出于我们无法控制的某些原因。

描述了一种可能的解决方法 here .另一个解决方法依赖于 DOM window.onunloadwindow.close() 被调用时总是被触发这一事实。您应该计算出相应的 WebBrowser 状态转换。导航、windows.closerefresh/F5 之间的转换不同。更多信息 here .

关于c# - Web 浏览器控件 - 检测何时调用 js window.close,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20205688/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com