如何防止webbrowser控件中的弹出窗口,新选项卡,新窗口和消息框?

时间:2014-02-20 04:42:19

标签: c# .net vb.net controls webbrowser-control

这是HTML代码:

<script type='text/javascript'>//<![CDATA[ 
    window.onload=function(){
    alert('hi');
    }//]]>  

</script>

警报,弹出窗口,新标签,新窗口不仅会导致焦点变化 换句话说,我不希望WebBrowser控件聚焦或改变当前焦点。

寻找一种不会影响任何打击的解决方案(我需要启用javascript)。

1 个答案:

答案 0 :(得分:1)

理论上,您应该实施IProtectFocus,但显然存在问题:

http://social.msdn.microsoft.com/Forums/windows/en-US/211733a0-af84-4cc4-9851-2f19def7aedd/iprotectfocus-and-allowfocuschange-not-working-on-webbrowser?forum=winforms

另一种选择可能是实现CBTHook,句柄HCBT_SETFOCUS并拒绝它(如果窗口变焦,则返回1以防止它)WebBrowser对象的子窗口。

免责声明:我自己没有尝试上述任何一项。