<ProgressBar Foreground="Red"
Background="Transparent"
Value="{Binding NumFailed, Mode=OneWay}"
Minimum="0"
Maximum="{Binding NumTubes, Mode=OneWay, Converter={x:Static wpftools:DebuggingConverter.Instance}, ConverterParameter=Failedprogressbar}"
FlowDirection="RightToLeft"
Style="{DynamicResource {x:Static wpftools:CustomResources.StyleProgressBarVistaKey}}" />
Вот так выглядит мой индикатор на данный момент. Стиль взят из http://mattserbinski.com/blog/look-and-feel-progressbar, а DebuggingConverter - это неоперативный преобразователь, который печатает значение, тип и параметр в консоль. Я убедился, что преобразователь для максимума вызывается при изменении свойства NumTubes.
По сути, ProgressBar не будет перерисовываться, пока значение не изменится. Таким образом, если у меня есть 2 пробирки, а 1 - неудачная, даже если я добавлю еще 20 пробирок, полоса будет заполнена наполовину, пока не изменится NumFailed, тогда пропорция обновится. Я попытался добавить ложные уведомления о свойстве NumFailed, но это, очевидно, не работает, так как значение не изменилось.
Идеи