Binding.Mode 属性

定义

获取或设置一个值,该值指示绑定的数据流方向。

public:
 property BindingMode Mode { BindingMode get(); void set(BindingMode value); };
BindingMode Mode();

void Mode(BindingMode value);
public BindingMode Mode { get; set; }
var bindingMode = binding.mode;
binding.mode = bindingMode;
Public Property Mode As BindingMode
<Binding Mode="bindingModeMemberName"/>

属性值

BindingMode 值之一。 默认值为 OneWay:源更新目标,但对目标值的更改不会更新源。

示例

此示例演示如何在 XAML 中设置绑定模式。

<TextBox x:Name="MyTextBox" Text="Text" Foreground="{Binding Brush1, Mode=OneWay}"/>

注解

对于 OneWayTwoWay 绑定,对源的动态更改不会自动传播到目标,而无需从源提供一些支持。 必须在源对象上实现 INotifyPropertyChanged 接口,以便源可以通过绑定引擎侦听的事件报告更改。 对于 C# 或 Microsoft Visual Basic,请实现 System.ComponentModel.INotifyPropertyChanged。 对于 (C++/CX) 的 Visual C++ 组件扩展,请实现 Windows::UI::Xaml::D ata::INotifyPropertyChanged

对于 TwoWay 绑定,对目标的更改会自动传播到源,除非绑定目标是 TextBox.Text 属性。 在这种情况下,仅当 TextBox 失去焦点时才会进行更新。 此外,还可以将 TwoWay 绑定上的 UpdateSourceTrigger 设置为 Explicit,在这种情况下,可以通过调用 UpdateSource 显式控制对源的更新。

对于 OneTimeOneWay 绑定,调用 DependencyObject.SetValue 会自动更改目标值并删除绑定。

在绑定已附加到目标元素和目标属性之后,无法设置 Binding 对象的属性值。 如果尝试此操作,将收到运行时异常。

适用于

另请参阅