我只是用谷歌搜索了大约2个小时,却没有找到任何东西。
鉴于以下情况:
public class Person
{
[Required]
public string Name { get; set; }
}
XAML:
<TextBox Text="{Binding Name, Mode=TwoWay}" />
您将如何像MVC3中那样自动在UI上获取验证的反馈?
(哦,现在我真的不在乎是否可以使用[Required]之类的集成DataAnnotations。)
任何帮助深表感谢!
最佳答案
我在WinRT XAML Toolkit中添加了一些内容。它称为TextBoxValidationExtensions,可让您定义验证,如下所示:
<TextBox
Width="400"
HorizontalAlignment="Left"
xyzc:TextBoxValidationExtensions.Format="NonEmptyNumeric"
xyzc:TextBoxValidationExtensions.InvalidBrush="Red"
xyzc:TextBoxValidationExtensions.ValidBrush="Green" />
这些格式当前定义为:
[Flags]
public enum ValidTextBoxFormats
{
Any = 0,
NonEmpty = 1,
Numeric = 2,
NonEmptyNumeric = 3
}
整个代码太长,无法在此处共享。您可以从CodePlex中取出代码,然后根据自己的喜好进行修改-添加新的验证规则,修改默认画笔等。