0

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

在控件的代码中是否有任何常见的方法来做到这一点?

4

1 回答 1

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 属性的绑定。
在 xaml 中设置它有什么问题?

于 2014-10-07T21:22:43.870 回答