private void BtnSave_Click(object sender, EventArgs e) { const string argumentNullError = "Der Patient kann nicht gespeichert werden ohne "; const string strBirthday = "ein gültiges Geburtsdatum."; const string strGender = "ein Geschlecht."; const string strAddress = "gültige Adressdaten."; const string strInsurance = "eine Krankenkasse."; const string strDoctor = "einen Hausarzt."; if (dtpBirthday.Text == String.Empty) { MessageBox.Show(argumentNullError + strBirthday); } else if (tbGender.Text == String.Empty) { MessageBox.Show(argumentNullError + strGender); } else if (selectedAddress == null) { MessageBox.Show(argumentNullError + strAddress); } else if (selectedInsurance == null) { MessageBox.Show(argumentNullError + strInsurance); } else if (selectedDoctor == null) { MessageBox.Show(argumentNullError + strDoctor); } else { if (int.TryParse(tbInsuranceNr.Text, out var insuranceNr)) { var birthday = dtpBirthday.Value; var gender = tbGender.Text; var note = tbNote.Text; if (patient != null) // edit handover patient { patient.Birthday = birthday; patient.Gender = gender; patient.InsuranceNr = insuranceNr; patient.InsuranceAgency = selectedInsurance; patient.LocalDoctor = selectedDoctor; patient.Address = selectedAddress; patient.Note = tbNote.Text; patient.Update(); } else { patient = new Model.Patient(birthday, gender, selectedInsurance, insuranceNr, selectedDoctor, selectedAddress, note); // create new patient } this.DialogResult = DialogResult.OK; } else { MessageBox.Show("Die Krankenversichertennummer darf nur aus Ziffern bestehen."); //TODO: Maybe not use Integer in the Database? My InsuranceID has letters in it } } }