更改Silverlight中所有TextBox的默认UpdateSourceTrigegr值

时间:2014-10-07 05:56:34

标签: .net binding textbox silverlight-5.0 updatesourcetrigger

我们有一个自定义TextBox(继承TextBox),我们想将TextProperty的Binding的UpdateSourceTrigger值更改为Explicit。在Silverlight中,只有三个值是Default,Explicit和PropertyChanged。

在Control的代码中有没有通用的方法呢?

1 个答案:

答案 0 :(得分:0)

我不这么认为 我正在试验这个:

    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 */

        }
    }  

在标有“错误”的行上。抛出了一个异常:Binding cannot be changed after it has been used.我不知道如何更早地进入Text属性的Binding。
在xaml中设置它有什么问题?