internal static void RefreshValidation(this DependencyObject element, ValidationInfo info) { var status = info.Status; element.SetStatus(status); if (status == ValidationStatus.Succeeded && element.GetSucceededTemplate() == null) { status = null; } if (status.HasValue) { element.SetDataErrorInfo(info.Messages); } else { element.ClearDataErrorInfoBinding(); } }