我有一个WPF,其中我实现了一个WebBrowser控件,并且我有一个对象列表,当我选择它们时,它会更改webBrowser控件的url绑定,一切都很好。
但是,如果我所在的网页试图关闭该网页,则会弹出一个对话框,您可以点击是或否来关闭“窗口”( WebBrowser控件)
如果用户点击"yes“,则关闭web浏览器控件,并在您尝试选择列表中的其他内容时抛出异常,因为该窗口已不存在。
webbrowser控件没有关闭暴露的方法,我可以重写"Window.Close()“方法,但这也阻止了我关闭应用程序主窗口。
我尝试从WebBrowser类继承,但它是密封的,因此我无法继承以添加事件处理程序或覆盖"Close()“等方法或"OnClosing()”等事件
我没有对该网站的控制,因为它是第三方产品。
此外,WebBrowser控件在退出时不会取消导航。
所以我的问题是
有没有可能截取对话并总是回答"no"?
或
有没有其他方法可以防止WebBrowser控件在用户对对话框说“是”的情况下关闭?
发布于 2011-12-07 01:01:01
因此,我最终将控件放在单独的视图中,然后构建和销毁作为对话的视图
发布于 2011-11-18 05:45:44
有一次,我不得不解决类似的情况。这是一个Delphi应用程序,有一个嵌入的TWebBrowser组件,本质上和.NET的WebBrowser是一样的,软件会自动点击网页的元素,点击后会弹出确认对话框。自动按下OK按钮的最简单方法是使用确认对话框的参数调用FindWindow,并通过调用SendInput使用窗口句柄向其发送Enter键按下。我认为在您的情况下,需要按Escape键。
https://stackoverflow.com/questions/8171587
复制相似问题