新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文实例为大家分享了WPF ProgressBar实现实时进度的具体代码,供大家参考,具体内容如下
网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了武强免费建站欢迎大家使用!
简单测试,页面如图:
利用上班的一点点空闲时间,做了个wpf progressbar的例子,觉得有潜力可挖,故放上来供大家参考,有写的更好的请留言哦,方便交流学习,谢谢
这个xaml:
当前进度:
后台代码:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using System.Threading; namespace WpfBrowserAppDrill { ////// ProgressBarPage.xaml 的交互逻辑 /// public partial class ProgressBarPage : Page { public ProgressBarPage() { InitializeComponent(); } private void beginImport() { double value = 0; double total = 100d;//得到循环次数 while (value < total) { double jd = Math.Round(((value + 1) * (pb_import.Maximum / total)), 4); pb_import.Dispatcher.Invoke(new Action(pb_import.SetValue), System.Windows.Threading.DispatcherPriority.Background, ProgressBar.ValueProperty, jd); //这里是加数据或费时的操作,我这里让它挂起300毫秒 Thread.Sleep(300); txtJD.Text = "当前的进度是:" + (value + 1) + "(实际值)" + jd + "(百分比)"; value++; } } private void Button_Click(object sender, RoutedEventArgs e) { beginImport(); ////new Thread(new ThreadStart(beginImport)).Start(); } private void Page_Loaded(object sender, RoutedEventArgs e) { pb_import.Maximum = 100; pb_import.Value = 0; } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。