0

我将一个 TextBox 控件绑定到一个名为 Address 的实体,该实体具有一个子属性 AddressLines。内部验证逻辑具有 AddressLines 属性的 ValidationErrors,但它不会通过红色边框在控件上“直观地”反映。

    <TextBox  Text="{Binding Path=Address.AddressLines, 
                             Mode=TwoWay,
                             UpdateSourceTrigger=PropertyChanged, 
                             NotifyOnValidationError=True}" 

              ToolTip="{Binding RelativeSource={RelativeSource Self}, 
                                Path=(Validation.Errors)[0].ErrorContent}" />

如果我没记错,那是因为实体Address本身不为空而属性AddressLines为空。如果是这种情况,如何在 Master-Detail 错误的情况下通知控件验证错误?

4

1 回答 1

1

最好的办法是使用 IDataErrorInfo 接口来自定义对象控制其验证状态的方式。

看看这里的文章,它给出了一个很好的例子。如果您想要与您的代码相关的示例,请提供您的地址等类,我会看看我能做什么!

于 2012-11-05T12:49:22.807 回答