WebBrowser.ScriptErrorsSuppressed Property


Gets or sets a value indicating whether the WebBrowser displays dialog boxes such as script error messages.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public bool ScriptErrorsSuppressed { get; set; }

Property Value

Type: System.Boolean

true if the control does not display its dialog boxes; otherwise, false. The default is false.

Exception Condition

This WebBrowser instance is no longer valid.


A reference to an implementation of the IWebBrowser2 interface could not be retrieved from the underlying ActiveX WebBrowser control.

Set this property to false to debug Web pages that you display in the WebBrowser control. This is useful when you use the control to add Web-based controls and scripting code to your application. It is less useful when you use the control as a generic browser. When you have finished debugging your application, set this property to true to suppress script errors.


When ScriptErrorsSuppressed is set to true, the WebBrowser control hides all its dialog boxes that originate from the underlying ActiveX control, not just script errors. Occasionally you might need to suppress script errors while displaying dialog boxes such as those used for browser security settings and user login. In this case, set ScriptErrorsSuppressed to false and suppress script errors in a handler for the HtmlWindow.Error event. For more information, see the code example in this topic.

The following code example demonstrates how to suppress script errors without suppressing other dialog boxes. In the example, the ScriptErrorsSuppressed property is set to false to ensure that dialog boxes are displayed. A handler for the HtmlWindow.Error event suppresses the error. This event is only accessible when a document is finished loading, so the handler is attached in a DocumentCompleted event handler.

// Hides script errors without hiding other dialog boxes.
private void SuppressScriptErrorsOnly(WebBrowser browser)
    // Ensure that ScriptErrorsSuppressed is set to false.
    browser.ScriptErrorsSuppressed = false;

    // Handle DocumentCompleted to gain access to the Document object.
    browser.DocumentCompleted +=
        new WebBrowserDocumentCompletedEventHandler(

private void browser_DocumentCompleted(object sender, 
    WebBrowserDocumentCompletedEventArgs e)
    ((WebBrowser)sender).Document.Window.Error += 
        new HtmlElementErrorEventHandler(Window_Error);

private void Window_Error(object sender, 
    HtmlElementErrorEventArgs e)
    // Ignore the error and suppress the error dialog box. 
    e.Handled = true;


for immediate callers to use this control. Demand value: LinkDemand; NIB: Named Permission Sets: FullTrust.

.NET Framework
Available since 2.0
Return to top