WPF中实现实时更新progressbar
2011-08-16 10:10
267 查看
实现实时更新ProgressBar貌似有很多方法,我搜索的很多资料都要用线程,觉得还是有点儿麻烦,最后在国外的技术论坛上看到一个用代理解决的方法,下面就是我的调试过程:
1. 先来看ProgressBar的代码
2. 接下来是后台的代码,先是函数外的代理预定义,接下来就是内部的代理声明,接着调用for循环中的函数就行了,我的代码是for循环获取网络回复然后更新进度条(progressbar),除progessbar相关的代码被删除了,你可以自由组装下面的代码。
3. 至于会用到的命名空间,你自己看着办吧,别太省事了。
1. 先来看ProgressBar的代码
<ProgressBar Height="20" HorizontalAlignment="Left" Margin="8,167,0,0" Name="pb_import" VerticalAlignment="Top" Width="243" />
2. 接下来是后台的代码,先是函数外的代理预定义,接下来就是内部的代理声明,接着调用for循环中的函数就行了,我的代码是for循环获取网络回复然后更新进度条(progressbar),除progessbar相关的代码被删除了,你可以自由组装下面的代码。
private delegate void UpdateProgressBarDelegate(System.Windows.DependencyProperty dp, Object value); private void beginImport() { pb_import.Maximum = 100; pb_import.Value = 0; UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(pb_import.SetValue); for (int i = 0; i < 100; i++) { Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { System.Windows.Controls.ProgressBar.ValueProperty,Convert.ToDouble( i + 1) }); } }
3. 至于会用到的命名空间,你自己看着办吧,别太省事了。
相关文章推荐
- WPF中实现实时更新progressbar
- JavaScript实现实时更新系统时间的实例代码
- 让网站真正实现实时更新的Realtime技术,不用刷新网站、没有延时性
- WPF+SignalR实现用户列表实时刷新
- Android开发——利用Cursor+CursorAdapter实现界面实时更新
- javascript实现的实时更新时间记录(运行时长)
- websocket+d3.JS实现图标实时更新
- java后台系统实现动态新闻列表实时更新
- 烂泥:rsync与inotify集成实现数据实时同步更新
- sphinx 增量索引 实现近实时更新
- 利用AJAX实现DropDownList与GridView做实时更新
- java实现kafka整合spark streaming完成wordCount,updateStateByKey完成实时状态更新
- 安卓端网页浏览过程中实时更新title的web实现
- javascript实现的实时更新时间记录(运行时长)
- Java实现系统目录实时监听更新。
- ICallbackHandler实现GridView无刷新实时更新
- wpf解决progressbar更新问题(不用线程)
- 谷歌金融 Onebox 实现实时信息更新
- ajax实现异步加载页面,实现信息实时更新
- 不算完美的实现了自动化部署的进度实时更新