在用户控件的属性上使用ValidatesOnDataErrors

问题描述

我有一个视图模型,该视图模型实现了具有验证实现的IDataErrorInfo。 我还有一个用户控件,其中包含标签和文本框。 当我在控件的Text属性上使用ValidatesOnDataErrors = True时,如果Text无效,则整个控件将变为红色(甚至是标签)。 我该如何处理用户控件内的验证错误,以使只有textBox变为红色?

<controls:TextBoxControl Label="Test:"
                         Text="{Binding PersonalModel.Test,UpdateSourceTrigger=PropertyChanged,ValidatesOnDataErrors=True}"

我的控件实现具有依赖项属性

public static readonly DependencyProperty TextProperty =
         DependencyProperty.Register("Text",typeof(string),typeof(TextBoxControl),new FrameworkPropertyMetadata(default(string),FrameworkPropertyMetadataOptions.BindsTwoWayByDefault));

public string Text
    {
        get { return (string)GetValue(TextProperty); }
        set { SetValue(TextProperty,value); }
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)