2017-06-16 47 views
0

我有一个简单的程序,它有两个长时间运行的任务来执行:WPF进度两种状态(繁忙和进步)

  1. 复制大量含数据库
  2. 与复制数据库的工作文件夹中。

我想要做的是以下几点: 在不同的变量,更新我的GUI一个额外的线程,这些长时间运行的进程运行 - 因此,例如目前的进度条是工作,也是所有消息我需要显示在GUI上。 但是,目前,我只能使用进度条进行第二项任务(使用数据库) - 文件夹和文件的复制是以一种复杂的方式完成的(为每个子文件夹调用它,需要复制),我不知道将复制多少个文件夹。 因此,在复制过程中,我希望进度条显示繁忙的指示(如this之一),并且在完成后它应该是dbs上工作的标准进度条。

这样的解决方案可能以一种干净的方式吗?

+0

+一个后续问题: 我也有一个信息:“复制文件夹和文件...”。 很高兴通过每秒更改省略号来表明程序正在工作,如下所示: “复制文件夹和文件” “复制文件夹和文件”。 “复制文件夹和文件..” “复制文件夹和文件...” 我知道这可以用定时器完成并更新相应的字符串,但对于这样一个简单的任务来说这似乎有点复杂/不切实际。有没有解决这个问题? –

+0

你能分享相关的代码吗? –

+0

请阅读本文:[关于进度条控件](https://msdn.microsoft.com/en-us/library/windows/desktop/bb760816(v = vs.85).aspx)和这个:[如何:创建一个ProgressBar](https://msdn.microsoft.com/en-us/library/ms743674(v = vs.85).aspx) –

回答

4

WPF,ProgressBar有一个属性IsIndeterminate正是这样做。

<ProgressBar IsIndeterminate="True" /> 

设置为true时,进度栏将无限旋转,并且不会显示范围内的进度。

+0

谢谢,抱歉也许会问明显的问题...这是我的第一个程序在c#^^ –