我正在TextBox上设置绑定,并且文本不能为空(null,空格或其他)。我按如下方式设置了ValidationRule:
internal class CannotBeBlankTextboxRule : ValidationRule
{
public String ErrorText { get; set; } = "The text cannot be blank.";
public override ValidationResult Validate (Object value, CultureInfo cultureInfo)
{
var str = value as String;
if (String.IsNullOrWhiteSpace(str))
return (new ValidationResult(false, this.ErrorText));
return (new ValidationResult(true, null));
}
}
它工作正常,但是窗口允许用户点击其他地方并继续,即使存在此错误。
在验证失败时,有没有办法让TextBox不会失去焦点?