我们有一个自定义的TextBox(继承TextBox),我们希望将TextProperty的Binding的UpdateSourceTrigger值更改为Explicit。在Silverlight中,只有三个值,即Default、Explicit和PropertyChanged。
在控制中心的代码中,有什么通用的方法可以做到这一点吗?
我不这么认为。
我在试验这个:
private void CustomTextBox1_OnLoaded(object sender, RoutedEventArgs e)
{
TextBox tb = sender as TextBox;
if (tb != null)
{
var b = tb.GetBindingExpression(TextBox.TextProperty);
var p = b.ParentBinding;
p.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged; /* ERROR */
}
}
在标记为"ERROR"的行上引发了一个异常:Binding cannot be changed after it has been used.
我不知道如何更早地访问Text属性的Binding
在xaml中设置它有什么问题?