private bool ValidateForm() { var isValid = true; var errorMessage = new StringBuilder("Ivalid values on form:"); if (AbsenceTypeComboBox.SelectedItem is null) { errorMessage.Append("\nAbsence Type must be populated\n"); isValid = false; } if (!int.TryParse(DaysWorkedOnHolidaysTextBox.Text, out var number)) { errorMessage.Append("\nDays worked on holidays must be a number"); isValid = false; } if (!AbsenceTracker.ValidateAbsenceForDublicateDatePeriod( EffectiveFromDateTimePicker.Value, ExpiresOnDateTimePicker.Value, CurrentAbsence.Id)) { errorMessage.Append("\nEffective and expiration dates must be unique in the absence list"); isValid = false; } if (EffectiveFromDateTimePicker.Text is null || ExpiresOnDateTimePicker.Text is null) { errorMessage.Append("\nEffective and expiration dates must be populated"); isValid = false; } if (ExpiresOnDateTimePicker.Value.Date < EffectiveFromDateTimePicker.Value.Date) { errorMessage.Append("Effective date must be less or equal to the expiration date\n"); isValid = false; } if (!isValid) { MessageBox.Show(errorMessage.ToString(), "Error"); } return(isValid); }