【问题标题】:How to reset WPF progress bar?如何重置 WPF 进度条?
【发布时间】:2009-12-20 16:05:32
【问题描述】:

我正在测试 WPF 进度条并尝试将其重置为初始状态,但它不起作用。

Duration duration = new Duration(TimeSpan.FromSeconds(1));
DoubleAnimation doubleanimation = new DoubleAnimation(200.0, duration);
myProgress.IsIndeterminate = true;
myProgress.BeginAnimation(ProgressBar.ValueProperty, doubleanimation);
myProgress.Value = 0;

在动画之前,进度条是静态的(无动画)。 动画结束后,进度条的颜色现在是浅灰色(比以前更浅),带有变亮的闪光效果。

评论时长和双重动画时,进度条保持静止。我发现这与双重动画有关。

//Duration duration = new Duration(TimeSpan.FromSeconds(1));
//DoubleAnimation doubleanimation = new DoubleAnimation(200.0, duration);
myProgress.IsIndeterminate = true;
//myProgress.BeginAnimation(ProgressBar.ValueProperty, doubleanimation);
myProgress.Value = 10;
myProgress.Value = 0;

如何解决这个 DoubleAnimation 问题?我在这里错过了什么?

【问题讨论】:

标签: wpf progress-bar reset


【解决方案1】:

【讨论】:

  • 是的,我在那里。我没有使用 StoryBoard,而只是使用 c# 代码来测试这种灰色发光效果是否消失。
  • 确实是操作系统的问题
【解决方案2】:

改用这种形式的 DoubleAnimation

DoubleAnimation doubleanimation = new DoubleAnimation(0,200, duration);

您明确设置了 from 和 too 值,而不仅仅是目标值。

代码:

在窗口ctor内:

myProgress.Maximum = 100; myProgress.Minimum = 0;

然后在按钮点击处理程序中说

myProgress.IsIndeterminate = false; //shouldn't really need this PB oddity
myProgress.IsIndeterminate = true;
myProgress.Value = 0;

Duration duration = new Duration(TimeSpan.FromSeconds(1));
DoubleAnimation doubleanimation = new DoubleAnimation(0,200, duration);

myProgress.BeginAnimation(ProgressBar.ValueProperty, doubleanimation);

PB 在 StackPanel 中,xaml 在

<ProgressBar Name="myProgress" Height="20"></ProgressBar>

这最初是在 XP 上测试的,但见下文

有关 Win 7 解决方案,请参阅此处

link text

【讨论】:

  • 好的,但是灰色闪烁发光效果并没有消失。它还在那里。
  • 我无法重现您所说的发光效果。您是否在 ProgressBar 的其他位置设置了任何其他值?
  • 要尝试的另一件事是在您的代码中将 IsIndeterminate 切换为 false,然后在下一行将其设置回 true,这有帮助吗?
  • 我已经把视频上传到youtube.com/watch?v=HQtGA_AW05U,你过几分钟就可以看到了。进度条有它的默认值(我没有改变它的属性)。
  • 刚刚在 Windows 7 上尝试过 - 我不喜欢那种发光 - 看到这篇文章似乎可以解决它,stackoverflow.com/questions/1523217/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多