Silverlight验证问题

时间:2011-09-13 10:51:39

标签: silverlight validation

我有一个Silverlight控件,其中有一个显示一系列电子邮件地址的ListBox。数据源是ViewModel中的ObservableCollection字符串(每封电子邮件一个)。很简单!

我想通过双向绑定将数据模板从TextBlock更改为TextBox,从而允许对列表进行就地编辑。

问题是这样的:如何验证用户编辑是否是有效的电子邮件地址?

我不想将绑定文本保存到列表中,除非它有效。我不能抛出异常,因为它绑定到一个字符串,所以没有Set方法可以修改。

我能想到的唯一解决方案是创建一个具有单个Email属性的虚拟类,这样我就可以验证该值。我无法相信这是最好的方式。

1 个答案:

答案 0 :(得分:1)

嗯,你遇到的问题不仅仅是验证问题。当源对象是字符串时,您不能使用TwoWay绑定。

创建具有AddressEntry字符串属性的EmailAddress类确实有意义。这样你就可以进行双向绑定工作,它可以让你在某处编写验证。