C#:为什么我的进度条没有运行几次
本文关键字:运行 几次 为什么 我的 | 更新日期: 2023-09-27 17:57:18
我想在我的 WPF 应用程序中实现 2 个进度条。一个(进度条文档)应显示每个选定文档的进度,另一个(进度条进程)应显示整个过程的进度,包括每个选定文档的处理。我的问题是,如果进度条的值为 100,则进度条的动画将停止,但进度条文档的动画不会重置并重新启动。我该怎么做?
double summand = (1 / anzahl);
Duration durationdocument = new Duration(TimeSpan.FromSeconds(1));
Duration durationprocess = new Duration(TimeSpan.FromSeconds(anzahl));
DoubleAnimation doubleanimationdocument = new DoubleAnimation(ProgressbarDocument.Value, durationprocess);
DoubleAnimation doubleanimationprocess = new DoubleAnimation(ProgressbarProcess.Value, durationprocess);
for (int j = 0; j <= anzahl; j++ )
{
for (int i = 0; i < 100; i++)
{
ProgressbarDocument.Value++;
ProgressbarProcess.Value= summand + ProgressbarProcess.Value;
doubleanimationdocument = new DoubleAnimation(ProgressbarDocument.Value, durationdocument);
doubleanimationprocess = new DoubleAnimation(ProgressbarProcess.Value, durationprocess);
ProgressbarDocument.BeginAnimation(ProgressBar.ValueProperty, doubleanimationdocument);
ProgressbarProcess.BeginAnimation(ProgressBar.ValueProperty, doubleanimationprocess);
}
if(ProgressbarDocument.Value==100)
{
ProgressbarDocument.Value = 0;
ProgressbarDocument.BeginAnimation(ProgressBar.ValueProperty, doubleanimationdocument);
}
}
你的内部 for 循环for (int i = 0; i < 100; i++)
将在我 99 岁后退出。 i == 100 永远不会被调用,因此您的 if 语句if(ProgressbarDocument.Value==100)
永远不会匹配。
我假设您希望您的 for 循环运行到 100:
for (int i = 0; i <= 100; i++)