我正在使用 WPF MVVM 我的项目之一。我有一个绑定到对象列表的数据网格。
<DataGrid ItemsSource="{Binding Path=ListOfValues}" Margin="5,38"
在我的视图模型类中,我有一个 ListOfValues 的属性
public ObservableCollection<ClassA> ListOfValues
{
get { return listOfValues; }
set
{
listOfValues= value;
RaisePropertyChangedEvent("ListOfValues");
}
}
在我的 ClassA 中,我有三个属性。
public string Name { get; set; }
public long No { get; set; }
public decimal Amount { get; set; }
在网格中,用户只能为 Amount 字段输入一个值。我想验证用户是否为该字段输入了有效的十进制值。
建议我一个可以捕捉到异常的地方。我尝试在窗口关闭时处理它。但是如果用户输入无效值,它不会保存在视图的数据上下文中。我还尝试在 ClassA 的设置器中验证它,它没有命中值的设置器。