WebBrowser.ScriptErrorsSuppressed プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
スクリプト エラー メッセージなどのダイアログ ボックスが WebBrowser に表示されるかどうかを示す値を取得または設定します。
public:
property bool ScriptErrorsSuppressed { bool get(); void set(bool value); };
public bool ScriptErrorsSuppressed { get; set; }
member this.ScriptErrorsSuppressed : bool with get, set
Public Property ScriptErrorsSuppressed As Boolean
プロパティ値
true コントロールにダイアログ ボックスが表示されない場合。それ以外の場合は false。 既定値は、false です。
例外
この WebBrowser インスタンスは無効です。
基になる ActiveX WebBrowser コントロールから IWebBrowser2 インターフェイス の実装への参照 を取得できませんでした。
例
次のコード例は、他のダイアログ ボックスを抑制せずにスクリプト エラーを抑制する方法を示しています。 この例では、 ScriptErrorsSuppressed プロパティが false に設定され、ダイアログ ボックスが確実に表示されます。
HtmlWindow.Error イベントのハンドラーによってエラーが抑制されます。 このイベントは、ドキュメントの読み込みが完了したときにのみアクセスできるため、ハンドラーは DocumentCompleted イベント ハンドラーにアタッチされます。
// 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(
browser_DocumentCompleted);
}
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;
}
' Hides script errors without hiding other dialog boxes.
Private Sub SuppressScriptErrorsOnly(ByVal browser As WebBrowser)
' Ensure that ScriptErrorsSuppressed is set to false.
browser.ScriptErrorsSuppressed = False
' Handle DocumentCompleted to gain access to the Document object.
AddHandler browser.DocumentCompleted, _
AddressOf browser_DocumentCompleted
End Sub
Private Sub browser_DocumentCompleted(ByVal sender As Object, _
ByVal e As WebBrowserDocumentCompletedEventArgs)
AddHandler CType(sender, WebBrowser).Document.Window.Error, _
AddressOf Window_Error
End Sub
Private Sub Window_Error(ByVal sender As Object, _
ByVal e As HtmlElementErrorEventArgs)
' Ignore the error and suppress the error dialog box.
e.Handled = True
End Sub
注釈
WebBrowser コントロールに表示する Web ページをデバッグするには、このプロパティをfalseに設定します。 これは、コントロールを使用して Web ベースのコントロールとスクリプト コードをアプリケーションに追加する場合に便利です。 このコントロールを汎用ブラウザーとして使用する場合は、あまり役に立ちません。 アプリケーションのデバッグが完了したら、このプロパティを true に設定してスクリプト エラーを抑制します。
注
ScriptErrorsSuppressedが true に設定されている場合、WebBrowser コントロールは、スクリプト エラーだけでなく、基になる ActiveX コントロールからのすべてのダイアログ ボックスを非表示にします。 ブラウザーのセキュリティ設定やユーザー ログインに使用されるダイアログ ボックスなどのダイアログ ボックスを表示するときに、スクリプト エラーを抑制することが必要になる場合があります。 この場合は、 ScriptErrorsSuppressed を false に設定し、 HtmlWindow.Error イベントのハンドラーでスクリプト エラーを抑制します。 詳細については、このトピックのコード例を参照してください。