我很清楚WPF绑定的INotifyPropertyChanged和INotifyCollectionChanged。这已经实施并且按预期工作。因此,对我们实体上的属性的更改将设置其“IsDirty”标志。反过来,打开保存功能,所有通过绑定,你可能会说漂亮。
但是,我们最近提出了一个更改请求,要求在字段更改后立即启用“保存”按钮(即使用按下第一次按键),就像撤消应用程序命令一样当您键入文本框时。因此,保存按钮必须知道何时在表单上更改每个字段,而不是通过绑定在实体中更改属性。
这个请求帮助的主要原因是我们的一个表单只有一个字段发生变化(其他一切通常都是默认值),但是用户仍然需要跳出字段以启用“保存”按钮,而不是只是能够马上保存。
答案 0 :(得分:1)
您需要将UpdateSourceTrigger更改为PropertyChanged
每次文本更改时都会更新绑定,而不是LostFocus
- 这是文本框的默认设置。
<TextBlock Name="txtName" Text="{Binding Name, UpdateSourceTrigger=PropertyChanged}" />