我有一个TextBox控件,如下所示:
<TextBox Grid.Row="4" Grid.Column="1" HorizontalAlignment="Stretch" Text="{Binding Path=PostalCode}" VerticalAlignment="Stretch"/>
在PostalCode Set属性中,我进行了一些验证,如果情况不正确,则会引发错误:
set
{
if (this.postalCode != value.ToUpper().Trim())
{
Regex rgx = new Regex(@"^[A-Z]\d[A-Z]\d[A-Z]\d$");
if (rgx.IsMatch(value.ToUpper().Trim()))
{
this.postalCode = value;
this.NotifyPropertyChanged("PostalCode");
}
else
{
throw new ArgumentException(string.Format("Invalid postal code: {0}", value));
}
}
}
对我不起作用的是在UI中捕获错误的方法。我想建立一个MessageBox,但似乎无法弄清楚该TextBox会捕获什么事件。
我是这方面的菜鸟,想知道我是否正在以正确的方式来做。