我遇到了这里提到的延迟绑定问题:
WPF DataGrid source updating on cell changed
当用户按 Enter 时,我的源属性正在更新,但是当他/她按 Tab 时没有。
我在上面的帖子中找到了一个很好的建议:UpdateSourceTrigger=LostFocus
(这是大多数upclicks的答案,BTW)现在,当用户水平或垂直离开单元格时,更新将根据需要完成。但是仍然存在一个问题:在底行中按 Enter 。
相关列定义如下:
<DataGridTextColumn Header="Quantity"
Width="Auto"
Binding="{Binding Path=Quantity,
UpdateSourceTrigger=LostFocus}">
</DataGridTextColumn>
是不是有类似:UpdateSourceTrigger=EditEnded
??
后添加:
Explicit
选项看起来很有希望:
我的事件处理程序只关心最后一行触发的事件并调用UpdateSource
方法。如果这是解决方案,我只需知道.UpdateSource()
左侧的内容。??
答案 0 :(得分:1)
试过这个:
<DataGridTextColumn Header="Quantity"
Width="Auto"
Binding="{Binding Path=Quantity, UpdateSourceTrigger=PropertyChanged}">
</DataGridTextColumn>
它工作正常。每次按键时都会更新绑定,而不是在更改行时更新。