我正在使用 WebBrowser 控件浏览到不同的页面(通过单击表单本身上的按钮,将 WebBrowser 控件导航到不同的页面)。当它加载页面时,我想要一个 ProgressBar 动画。它是否真的表明进度并不是什么大问题——我可以在加载时使用 Marquee 样式对其进行动画处理。
问题是:如何在页面加载时以这种方式使 ProgressBar 动画,并在页面加载完成时停止?
我正在使用 WebBrowser 控件浏览到不同的页面(通过单击表单本身上的按钮,将 WebBrowser 控件导航到不同的页面)。当它加载页面时,我想要一个 ProgressBar 动画。它是否真的表明进度并不是什么大问题——我可以在加载时使用 Marquee 样式对其进行动画处理。
问题是:如何在页面加载时以这种方式使 ProgressBar 动画,并在页面加载完成时停止?
查看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
将指示有多少字节要下载。直接从中获得百分比非常容易,所以......你去吧!
我不会引导您完成如何制作进度条(那里有大量的实现),但这应该可以让您继续前进。
这回答了你的问题了吗?