【发布时间】:2015-05-11 16:40:09
【问题描述】:
我正在使用自定义 ValidationRule 来验证输入到 TextBox 中的数据。
<TextBox>
<Binding Path="Name" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<util:AlphanumericValidationRule/>
<util:StringLengthIfEnteredRule Min="1"/>
</Binding.ValidationRules>
</Binding>
</TextBox>
这可以很好地验证是否只输入了一个字母数字字符串,并且它的长度大于或等于 1。
问题在于,此 TextBox 所属的表单有一个“提交”按钮,该按钮绑定到 DataContext 内部的一个函数。因此,当他们点击提交时,我希望能够在数据上下文中知道我的所有字段是否都有效。
我已经对此进行了一些研究,我看到的最好方法是检查代码隐藏文件中的表单中是否有任何错误,并将该信息传递给您的 DataContext。这个解决方案不太理想,所以我想知道是否有某种可绑定的属性或我错过的东西可以提供这个功能?
tl;dr 如何告诉我的 DataContext 字段是否使用 XAML 进行验证?
【问题讨论】:
标签: c# wpf validation xaml datacontext