如何:指定绑定的方向
本示例演示如何指定绑定是仅更新绑定目标(目标)属性或绑定源(源)属性,还是同时更新目标属性和源属性。
示例
你可以使用 Binding.Mode 属性指定绑定的方向。 以下是可供绑定更新的选项:
无论是目标属性还是源属性,只要发生了更改,BindingMode.TwoWay 就会更新目标属性或属性。
BindingMode.OneWay 仅当源属性发生更改时更新目标属性。
BindingMode.OneTime 仅当应用程序启动或 DataContext 进行更改时更新目标属性。
BindingMode.OneWayToSource 在目标属性更改时,更新源属性。
BindingMode.Default 导致使用目标属性的默认值 Mode。
有关详细信息,请参见 BindingMode 枚举。
下面的示例演示如何设置 Mode 属性。
<TextBlock Name="IncomeText" Grid.Row="0" Grid.Column="1"
Text="{Binding Path=TotalIncome, Mode=OneTime}"/>
若要检测源更改(适用于 OneWay 和 TwoWay 绑定),则源必须实现合适的属性更改通知机制,例如 INotifyPropertyChanged。 请参阅实现属性更改通知,获取 INotifyPropertyChanged 实现的示例。
对于 TwoWay 或 OneWayToSource 绑定,可以通过设置 UpdateSourceTrigger 属性来控制源更新执行时间。 有关详细信息,请参阅UpdateSourceTrigger。