.net 为什么IDataErrorInfo中的columnName属性返回空字符串?

.net 为什么IDataErrorInfo中的columnName属性返回空字符串?,.net,wpf,telerik-grid,idataerrorinfo,.net,Wpf,Telerik Grid,Idataerrorinfo,我正在使用.NET4.0框架开发一个WPF应用程序,并使用TelerikRadGridView显示各种数据。RadGridView绑定到从SQL数据库填充的可观察集合。我使用IDataErrorInfo来处理行验证,但是当我逐步阅读代码时,大多数列名似乎是空字符串事件,尽管我知道情况并非如此。我将验证定义如下: public partial class DataRow : IDataErrorInfo { public string Error { get { r

我正在使用.NET4.0框架开发一个WPF应用程序,并使用TelerikRadGridView显示各种数据。RadGridView绑定到从SQL数据库填充的可观察集合。我使用IDataErrorInfo来处理行验证,但是当我逐步阅读代码时,大多数列名似乎是空字符串事件,尽管我知道情况并非如此。我将验证定义如下:

public partial class DataRow : IDataErrorInfo
{
    public string Error
    {
        get { return null; }
    }
    public string this[string columnName]
    {
        get
        {
            return this.GetResult(columnName);
        }
    }

    private string GetResult(string columnName)
    {
        switch (columnName)
        {
            case "Column1":
                if (string.IsNullOrEmpty(this.Column2))
                {
                    return "Error";
                }
                break;
            case "Column2":
                if (string.IsNullOrEmpty(this.Column3))
                {
                    return "Error with Column 2";
                }
                break;
            case "Column3":
                break;
            case "Column4":
                if (!string.IsNullOrEmpty(this.Column4))
                {
                    return "Column 4 is not null or empty";
                }
                break;
            case "Column5":
                if (this.Column5 <= 0)
                {
                    return "Column 5 must be greater than zero";
                }
                break;
            default:
                break;
        }

        return null;
    }
}
private string GetResult(string columnName)
{
    switch (columnName)
    {
        case "Column1":
            if (string.IsNullOrEmpty(this.Column2))
            {
                return "Error";
            }
            break;
        case "":
            return "This column is in error";
            break;
        default:
            break;
    }
    return null;
}
第2列、第4列和第5列出现错误

到目前为止,我还没有发现是否还有其他人有这个问题。任何帮助都将不胜感激

谢谢