public string this[string columnName]
        {
            get
            {
                switch (columnName)
                {
                case nameof(Name):
                    if (string.IsNullOrWhiteSpace(Name))
                    {
                        return("Required");
                    }

                    if (ValidationUtilities.ValidateName(Name) != null)
                    {
                        return("Must be a valid identifier");
                    }

                    if (Name.StartsWith(" "))
                    {
                        return("Can't start with a space");
                    }

                    if (Name.EndsWith(" "))
                    {
                        return("Can't end with a space");
                    }

                    if (_existingNames != null && _existingNames.Any(s => string.Equals(s, Name, StringComparison.OrdinalIgnoreCase)))
                    {
                        return("Duplicated name");
                    }

                    return(null);

                case nameof(SelectedFieldType):
                    if (SelectedFieldType == null)
                    {
                        return("Required");
                    }
                    return(null);

                case nameof(Prompt):
                    if (string.IsNullOrWhiteSpace(Prompt))
                    {
                        return("Required");
                    }

                    if (ValidationUtilities.ValidateFieldPrompt(Prompt) != null)
                    {
                        return("Cannot end in a colon or space");
                    }

                    return(null);
                }
                return(null);
            }
        }