C# 从Web浏览器控件更正NewWindow事件的URI

C# 从Web浏览器控件更正NewWindow事件的URI,c#,.net,winforms,forms,webbrowser-control,C#,.net,Winforms,Forms,Webbrowser Control,我正在使用.net webbrowser控件,希望捕获新窗口事件。当webbrowser中的网页试图打开新窗口时。 使用我自己的NewWindow3方法实现,我接收到事件,但在某些情况下URI不正确。这是在删除url之后 [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0x111)] void NewWindow3([In

我正在使用.net webbrowser控件,希望捕获新窗口事件。当webbrowser中的网页试图打开新窗口时。 使用我自己的NewWindow3方法实现,我接收到事件,但在某些情况下URI不正确。这是在删除url之后

[PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType =       MethodCodeType.Runtime), DispId(0x111)]
void NewWindow3([In, Out, MarshalAs(UnmanagedType.IDispatch)] ref object ppDisp, [In, Out] ref bool Cancel, [In] uint dwFlags, [In, MarshalAs(UnmanagedType.BStr)] string bstrUrlContext, [In, MarshalAs(UnmanagedType.BStr)] string bstrUrl);
我在一个博客上读到了这篇文章,看起来这是NewWindows3的局限性 它们实现为MSHTML主机窗口,允许它们呈现和显示HTML内容,但不能显示文档之间的超链接

是否有其他方法可以捕获事件和完整的URI,包括文档中的超链接