2008-12-15 8 views

Antwort

19

Die WebBrowser-Fensterformulare Steuerelement ist Wrapper um Internet Explorer und es stellt nicht die gesamte Funktionalität des zugrunde liegenden ActiveX-Steuerelements und insbesondere des NavigateError-Ereignisses. Hier ist ein Workaround:

Fügen Sie zuerst einen Verweis auf SHDocVw.dll zu Ihrem Projekt hinzu (Registerkarte COM von Add Reference window). Dann können Sie das folgende tun Fehler zu erfassen:

private void button1_Click(object sender, EventArgs e) 
{ 
    SHDocVw.WebBrowser instance = (SHDocVw.WebBrowser)webBrowser1.ActiveXInstance; 
    instance.NavigateError += new SHDocVw.DWebBrowserEvents2_NavigateErrorEventHandler(instance_NavigateError); 
    webBrowser1.Navigate("http://www.google.com/foo"); 
} 

void instance_NavigateError(object pDisp, ref object URL, ref object Frame, ref object StatusCode, ref bool Cancel) 
{ 
    // Do whatever you want with the error    
} 
+0

Danke, das ist perfekt! Gute Antwort. – tpower