0

WebBrowser コントロールを使用して別のページを参照しています (フォーム自体のボタンをクリックして、WebBrowser コントロールを別のページに移動します)。ページを読み込んでいるときに、ProgressBar をアニメーション化する必要があります。進行状況が実際に示されているかどうかは大した問題ではありません。マーキー スタイルを使用して、読み込み中にアニメーション化することができます。

問題は、ページの読み込み中にこのように ProgressBar をアニメーション化し、ページの読み込みが終了したときに停止するにはどうすればよいかということです。

4

1 に答える 1

3

WebBrowser.ProgressChangedイベントを見てください。MSDN のページには、「Internet Explorer のものとかなり似ている」と書かれています。

そこから直接コードスニペット:

private void WebBrowser1_ProgressChanged(Object sender, WebBrowserProgressChangedEventArgs e) {

    System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
    messageBoxCS.AppendFormat("{0} = {1}", "CurrentProgress", e.CurrentProgress );
    messageBoxCS.AppendLine();
    messageBoxCS.AppendFormat("{0} = {1}", "MaximumProgress", e.MaximumProgress );
    messageBoxCS.AppendLine();
    MessageBox.Show(messageBoxCS.ToString(), "ProgressChanged Event" );
}

e.CurrentProgressこれまでにダウンロードされたバイト数を示し、ダウンロードするバイトe.MaximumProgress数を示します。そこからパーセンテージを取得するのは非常に簡単です。

プログレス バーの作成方法については説明しませんが (そのための実装はたくさんあります)、これでうまくいくはずです。

これはあなたの質問に答えていますか?

于 2013-10-30T17:58:56.457 に答える