在处理时,我想显示一个进度条,因为无论哪种方式,应用程序看起来都冻结了,用户也不知道它实际上正在工作.
现在我正在使用这样的工人:
private voID btnClick(object sender,RoutedEventArgs e){ BackgrounDWorker worker = new BackgrounDWorker(); worker.RunWorkerCompleted += worker_RunWorkerCompleted; worker.WorkerReportsProgress = true; worker.DoWork += worker_DoConvertOne; worker.ProgressChanged += worker_ProgressChanged; worker.RunWorkerAsync();}private voID worker_DoConvertOne(object sender,DoWorkEventArgs e){ var worker = sender as BackgrounDWorker; //The progress bar is filled on 20% worker.ReportProgress(0); worker.ReportProgress(10); worker.ReportProgress(20); //Processing myLongLastingFunction(bigWordfile); //The progress bas is full worker.ReportProgress(100,"Done Processing.");}private voID worker_RunWorkerCompleted(object sender,RunWorkerCompletedEventArgs e){ MessageBox.Show("Converting finished!"); TestProgressbar.Value = 0; ProgresstextBlock.Text = "";}private voID worker_ProgressChanged(object sender,ProgressChangedEventArgs e){ TestProgressbar.Value = e.Progresspercentage; ProgresstextBlock.Text = (string)e.UserState;}
它正在做这项工作,但它是一种解决方法,我想知道是否有一种正确的方法来解决我的问题.提前致谢. 总结
以上是内存溢出为你收集整理的c# – 使用库中的函数同步wpf进度条的正确方法全部内容,希望文章能够帮你解决c# – 使用库中的函数同步wpf进度条的正确方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)