protected virtual void SetDirtyAndAutomaticallyValidate(string propertyName, bool setDirtyAndAllowAutomaticValidation)
{
// Are we not validating or is this a warning or error message?
if (setDirtyAndAllowAutomaticValidation && !IsValidating &&
(string.CompareOrdinal(propertyName, WarningMessageProperty) != 0) &&
(string.CompareOrdinal(propertyName, HasWarningsMessageProperty) != 0) &&
(string.CompareOrdinal(propertyName, ErrorMessageProperty) != 0) &&
(string.CompareOrdinal(propertyName, HasErrorsMessageProperty) != 0))
{
if (ShouldPropertyChangeUpdateIsDirty(propertyName))
{
IsDirty = true;
}
IsValidated = false;
}
if (AutomaticallyValidateOnPropertyChanged && setDirtyAndAllowAutomaticValidation)
{
Validate();
}
}
#endregion