我有一个文本框绑定在一个快速递增的计数器上(每 10 毫秒)。
<TextBox Text="{Binding CounterInc.Counter}"/>
CounterInc 是一个在线程中增加 Counter 属性的类。
当我影响另一个对象时 CounterInc 属性:(
为了确保看到两个计数器之间的差异,第一个计数器在 1 和 100 之间是圆形的,第二个计数器是在 1000 和 1100 之间循环的)
private void Button_Click(object sender, RoutedEventArgs e)
{
if (flag)
CounterInc = FirstCounterInc;
else
CounterInc = SecondCounterInc;
flag = !flag;
}
TexBox 继续显示旧 Counter 的值。
如果我在重新影响 CounterInc 属性之前停止计数器递增,我没有问题,textBox 显示新的计数器值。
如果 currentValue 绑定正在更改,则绑定似乎无法附加到正确的属性 propertyChanged 事件。
请注意,如果计数器增量较慢(500 毫秒),则行为同样正确。
你有没有见过这个问题,以及这个问题的确切原因。
非常感谢你的帮助