C# 数据注释valuecontext始终为空

C# 数据注释valuecontext始终为空,c#,wpf,data-annotations,C#,Wpf,Data Annotations,我从一个ViewModel类调用validations,没有validationContext,validation工作正常,如果我选中validationContext,它的always show's me null。你能提供调用Validate方法的代码吗?@MikeEason我想没有调用代码,validation由xaml调用。不久前,我就注意到了同样的行为,而且从未弄清其根源。我也很想看到一个答案:你能提供调用Validate方法的代码吗?@MikeEason我认为没有调用代码,验证是由

我从一个ViewModel类调用validations,没有validationContext,validation工作正常,如果我选中validationContext,它的always show's me null。

你能提供调用Validate方法的代码吗?@MikeEason我想没有调用代码,validation由xaml调用。不久前,我就注意到了同样的行为,而且从未弄清其根源。我也很想看到一个答案:你能提供调用Validate方法的代码吗?@MikeEason我认为没有调用代码,验证是由xaml调用的。不久前,我就注意到了同样的行为,而且从未弄清其根源。我也希望看到以下问题的答案:
public class ExcludeChar : ValidationAttribute
    {
        string _characters;
        public ExcludeChar(string characters)
        {
            _characters = characters;
        }
        protected override ValidationResult IsValid(object value, System.ComponentModel.DataAnnotations.ValidationContext validationContext)
        {
            if (value != null)
            {
                for (int i = 0; i < _characters.Length; i++)
                {
                    var valueAsString = value.ToString();
                    if (valueAsString.Contains(_characters[i]))
                    {
                        var errorMessage = FormatErrorMessage(validationContext.DisplayName);
                        return new ValidationResult(errorMessage);
                    }
                }
            }
            return ValidationResult.Success;
        }
    }

[ExcludeChar("@#$",ErrorMessage = "Please select a option.")]
        public string LSESelected1
        {
}