BindingExpression 类

2013/12/13

包含与 Binding 对象内的单个绑定有关的信息。

Namespace:  System.Windows.Data
程序集:  System.Windows(位于 System.Windows.dll 中)

public sealed class BindingExpression : BindingExpressionBase

BindingExpression 类型公开以下成员。

  名称说明
公共属性DataItem获取此 BindingExpression 使用的绑定源对象。
公共属性ParentBinding返回当前 BindingExpressionBinding 对象。
返回顶部

  名称说明
公共方法Equals(Object)确定指定的 Object 是否等于当前的 Object (从 Object 继承。)
受保护的方法Finalize允许 Object 在垃圾回收器回收该对象之前尝试释放资源并执行其他清理操作。 (从 Object 继承。)
公共方法GetHashCode用作特定类型的哈希函数。 (从 Object 继承。)
公共方法GetType获取当前实例的 Type (从 Object 继承。)
受保护的方法MemberwiseClone创建当前 Object 的浅表副本。 (从 Object 继承。)
公共方法ToString返回一个字符串,它表示当前的对象。 (从 Object 继承。)
公共方法UpdateSource将当前绑定目标值发送到 TwoWay 绑定中的绑定源属性。
返回顶部

多个绑定目标可以使用一个 Binding 对象。然而,BindingExpression 类表示单个绑定。您可以通过调用绑定目标的 FrameworkElement.GetBindingExpression 方法,从绑定目标中检索 BindingExpression 实例。然后,您可以使用 BindingExpression 来调用 UpdateSource 方法。这可用于控制何时将值从绑定目标复制到绑定源。有关更多信息,请参见Windows Phone 的数据绑定

下面的代码示例演示如何使用此方法。


<TextBox x:Name="textBox1" Text="{Binding Test, Mode=TwoWay, UpdateSourceTrigger=Explicit}" />
<Button Content="Update" Click="Button_Click" />



public class TestData
{
    public String Test { get; set; }
}

TestData data;

public MainPage()
{
    InitializeComponent();
    data = new TestData { Test = "one" };
    textBox1.DataContext = data;
}

private void Button_Click(object sender, RoutedEventArgs e)
{
    BindingExpression expression = textBox1.GetBindingExpression(TextBox.TextProperty);
    MessageBox.Show("Before UpdateSource, Test = " + data.Test);
    expression.UpdateSource();
    MessageBox.Show("After UpdateSource, Test = " + data.Test);
}


Windows Phone OS

受以下版本支持: 8.0, 7.1, 7.0

Windows Phone

此类型的所有公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

显示:
© 2014 Microsoft