private static void CheckObjectValidationForFields(object value, string propertyChanged, ObservableCollection<FieldWarningOrErrorInfo> infoList,
ValidationType validationType)
{
if (string.IsNullOrEmpty(propertyChanged))
{
infoList.Clear();
}
else
{
for (int i = 0; i < infoList.Count; i++)
{
if (string.Compare(infoList[i].Field, propertyChanged) == 0)
{
infoList.RemoveAt(i);
}
}
}
Dictionary<string, string> fieldWarningsOrErrors = CheckFieldWarningsOrErrors(value, propertyChanged, validationType);
foreach (var fieldWarningOrError in fieldWarningsOrErrors)
{
var fieldWarningOrErrorInfo = new FieldWarningOrErrorInfo(fieldWarningOrError.Key, fieldWarningOrError.Value);
if (!infoList.Contains(fieldWarningOrErrorInfo))
{
infoList.Add(new FieldWarningOrErrorInfo(fieldWarningOrError.Key, fieldWarningOrError.Value));
}
}
}