C# 验证数据网格WPF

C# 验证数据网格WPF,c#,wpf,validation,binding,datagrid,C#,Wpf,Validation,Binding,Datagrid,我试图在WPF中绑定到datagrid的对象上实现自定义验证 以微软为例: 如果我删除“课程Id”,我会从框架的默认逻辑中得到一个工具提示错误 现在,如果我在模型的Set方法中放置了一个抛出exeption的自定义验证,那么我在行级别得到了一个错误,但在单元级别没有得到任何结果 public int Id { get { return _number; } set { if (_number == value) return; if (

我试图在WPF中绑定到datagrid的对象上实现自定义验证

以微软为例:

如果我删除“课程Id”,我会从框架的默认逻辑中得到一个工具提示错误

现在,如果我在模型的Set方法中放置了一个抛出exeption的自定义验证,那么我在行级别得到了一个错误,但在单元级别没有得到任何结果

public int Id
{
    get { return _number; }
    set
    {
        if (_number == value) return;
        if (value < 0)  throw new Exception("Custom validation >= 0");
        _number = value;
        OnPropertyChanged("Id");
    }
}

public int-Id
{
获取{return\u number;}
设置
{
if(_number==值)返回;
如果(值<0)抛出新异常(“自定义验证>=0”);
_数字=数值;
OnPropertyChanged(“Id”);
}
}
红色样式不是由自定义的例外触发的,我想要它。
似乎没有在单元格级别设置Validation.HasError。

您确定引发
异常是生成无效单元格的正确方法吗?
public int Id
{
    get { return _number; }
    set
    {
        if (_number == value) return;
        if (value < 0)  throw new Exception("Custom validation >= 0");
        _number = value;
        OnPropertyChanged("Id");
    }
}