WPF listview数据绑定 - 如何在不标记的情况下强制更新到底层对象?

时间:2008-11-26 04:41:54

标签: wpf

我有一个绑定到BindingList&lt; T&gt;的WPF ListView。绑定就像一个魅力,但我必须从单元格中跳出来获取绑定属性才能更新....这是一个问题,因为大多数用户在单击保存按钮之前不会跳出最后一列。< / p>

如何强制列表视图将更改“持久化”到绑定的DataContext而不做任何破坏。

1 个答案:

答案 0 :(得分:11)

WPF中的绑定有一个名为“UpdateSourceTrigger”的属性,它告诉Binding何时更新UI绑定的东西。默认情况下,它为Text属性设置为“LostFocus”,这是您最有可能使用的属性。

将绑定中的触发器更改为“PropertyChanged”,如下所示:

Text="{Binding Foo,UpdateSourceTrigger=PropertyChanged}"

...现在,当文本在UI中更改时,源“Foo”属性将更新。

对于UpdateSourceTrigger,还有一个“显式”设置,如果您需要暂停向源写入任何更改,直到用户单击“确定”按钮,这样做很方便。