为什么 WPF ProgressBar 在其值大于最大值时不抛出异常?

Why WPF ProgressBar doesn't throw exception when its Value is greater than the Maximum?

我是 WPF 的新手,我在处理循环进度条时意识到 ProgressBar 接受的值大于 Maximum。即使设置了,Value 也会自动均衡到 Maximum。所以我不想使用这样的进度条。我认为这不是良好编程的安全方法。因为它使您无法弄清楚进度何时计算错误或其他任何事情。在 WPF 和 Winform 进度条有我所说的行为之前,我在 Winforms 中。

我使用了这段代码并期望它抛出异常,但它没有。

 ProgressBar prbar = new ProgressBar();
 prbar.Maximum = 100;
 prbar.Value = 10000;

如何在 Value 结束时抛出异常 Maximum 就像在 Winforms C# 中一样?

您可以处理进度条的 ValueChanged 事件并检查值是否大于最大值然后您可以手动引发异常。