1

Web ブラウザー コンポーネントを含むフォームがあり、ページのリロードをトリガーするボタンがあります。コードは次のとおりです。

kiekmiestu = comboBox1.Text;
string nuoroda = "http://centrosokoladine.lt/PHP/generatorius.php?m=" + kiekmiestu;
webBrowser1.Navigate(nuoroda);

kiemiestu が teks 4 を取得すると、php ジェネレーターはページの更新ごとにマップのランダムな場所に 4 つの都市を生成するとします。私の問題は、ボタンを 2 回目にクリックすると、WebBrowser1 が 2 回目に移動していないように見えるため、ページが変更されないことです。キャッシュの問題かもしれません。 o WebBrowser は、既に表示されている場合、同じページに移動しませんか?

4

2 に答える 2

5

webbrowser.refresh() MSDNを試すことができます:

private void refreshButton_Click(object sender, EventArgs e)
{
    // Skip refresh if about:blank is loaded to avoid removing
    // content specified by the DocumentText property.
    if (!webBrowser1.Url.Equals("about:blank"))
    {
        webBrowser1.Refresh();
    }
}

webbrowser.Refresh() の詳細と、ナビゲートが機能しない理由:

WebBrowser コントロールは、最近アクセスしたサイトの Web ページをローカル ハード ディスクのキャッシュに格納します。各ページには、キャッシュに保持される期間を示す有効期限を指定できます。コントロールがページに移動するとき、ページを再度ダウンロードするのではなく、キャッシュされたバージョンがあればそれを表示することで時間を節約します。Refresh メソッドは、WebBrowser コントロールに現在のページをダウンロードして再読み込みさせ、コントロールが最新バージョンを表示するようにします。

wbbrowser コントロールのキャッシュをクリアするには、次の記事を検討してください: http://support.microsoft.com/kb/326201/de

于 2012-05-02T07:22:51.247 に答える
2

使ってみて

webBrowser1.Refresh();
于 2012-05-02T07:24:18.203 に答える