0

プロジェクトに Web ブラウザー コントロールがあります。よく働く!ただし、インターネットへの接続が失われてからプロジェクトを開くと、IE が開き、標準では Web ページを表示できないことが示されます。

インターネット接続が失われたときに、プロジェクトの Web ブラウザー コントロールにこのメッセージを表示し、IE ブラウザー ウィンドウをポップアップさせないようにしたいと思います。

ありがとう!

4

2 に答える 2

2

私のマシンで IE が開いていることはわかりませんが、WebBrowser コントロール内に通常の IE エラー メッセージが表示されます。

WebBrowser のNavigatedイベントを処理し、ドキュメントの url プロパティを調べることで、Web ページが正しく読み込まれていないことを検出できると思います。ここにいくつかの XAML があります:

<WebBrowser Source="http://www.google.com" Navigated="WebBrowser_Navigated" />

そして、ちょっとしたコード (私は VB を使用していません。申し訳ありません):

private void WebBrowser_Navigated(object sender, NavigationEventArgs e) {
    var browser = sender as WebBrowser;
    if (browser != null) {
        var doc = browser.Document as HTMLDocument;
        if (doc != null)
            MessageBox.Show(doc.url);
    }
}

私のマシンでは、ナビゲーションが失敗したときに、次の URL を取得しました。

res:ieframe.dll/navcancl.html# http://www.google.com

URL が常にこれとまったく同じであるとは考えられませんが、調べて、探していた URL ではないことを確認できるはずです。実際、「http:」は「res:」になりました。これが発生した場合 (予期しない場合)、ブラウザーにローカル ソースを指定させてメッセージを表示させることができます。

于 2013-08-13T20:21:12.953 に答える