private void btSpeichern_Click(object sender, EventArgs e)
        {
            if (editMode == true)
            {

                // Neues Mitarbeiter Objekt anlegen
                c_Mitarbeiter speicherMitarbeiter = new c_Mitarbeiter();

                // Variablendeklaration
                String strSQL;

                // =====================================
                //   Ueberpruefung auf leere Textfelder
                // =====================================

                // Persoenliche Daten
                if (tbVorname.Text != "" && tbNachname.Text != "" && dtpGebDatum.Text != "")
                {
                    speicherMitarbeiter.setVorname(tbVorname.Text);
                    speicherMitarbeiter.setNachname(tbNachname.Text);
                    // GebDatum umformatieren
                    speicherMitarbeiter.setGebDatum(dtpGebDatum.Text);
                    DateTime date = Convert.ToDateTime(speicherMitarbeiter.getGebDatum());
                    speicherMitarbeiter.setGebDatum(date.ToString("yyyy-MM-dd"));
                }
                else
                {
                    MessageBox.Show("Sie haben nicht alle Persönlichen Daten angegeben.", "Information", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    return;
                }

                // Anschrift
                if (tbStrasse.Text != "" && tbHausnummer.Text != "" && tbOrt.Text != "" && tbPlz.Text != "")
                {
                    speicherMitarbeiter.setStrasse(tbStrasse.Text);
                    speicherMitarbeiter.setOrt(tbOrt.Text);
                    if (c_Helper.wrongCharNumberExtra(tbHausnummer.Text) == false && c_Helper.numFormat(tbPlz.Text) == false)
                    {
                        speicherMitarbeiter.setHausnummer(tbHausnummer.Text);
                        speicherMitarbeiter.setPlz(Convert.ToInt32(tbPlz.Text));
                    }
                    else
                    {
                        MessageBox.Show("Falsches Format für die Felder Hausnummer und Postleitzahl.\nIm Feld Postleitzahl dürfen nur Zahlen stehen.", "Information", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                        return;
                    }
                }
                else
                {
                    MessageBox.Show("Sie haben nicht alle Anschrift-Daten angegeben.", "Information", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    return;
                }

                // Gehalt
                if (tbGehalt.Text != "")
                {
                    speicherMitarbeiter.setGehalt(Convert.ToDouble(tbGehalt.Text));
                    if (c_Helper.numFormatPunktKomma(speicherMitarbeiter.getGehalt().ToString()) == true)
                    {
                        MessageBox.Show("Falsches Format für das Feld Gehalt.", "Information", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    MessageBox.Show("Bitte Feld Gehalt ausfüllen.", "Information", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    return;
                }

                // Login - Daten
                if (tbBenutzername.Text != "" && ddlMitarbeiterPosition.Text != "")
                {
                    speicherMitarbeiter.setBenutzername(tbBenutzername.Text);
                    speicherMitarbeiter.setPositionBezeichnung(ddlMitarbeiterPosition.SelectedItem.ToString());

                    // Ueberpruefen welche Position ausgewaehlt wurde
                    int dbConnectOk = c.openConnection();
                    DataTable result2 = c.select("SELECT * FROM positionen;");
                    c.closeConnection();

                    int[] arrPosId = new int[result2.Rows.Count];
                    string[] arrPosBez = new string[result2.Rows.Count];

                    if (dbConnectOk == 0)
                    {

                        if (result2 != null)
                        {
                            for (int i = 0; i < result2.Rows.Count; i++)
                            {
                                arrPosId[i] = Convert.ToInt32(result2.Rows[i]["pos_id"]);
                                arrPosBez[i] = (result2.Rows[i]["bezeichnung"]).ToString();
                            }
                        }
                    }

                    for (int i = 0; i < arrPosId.Length; i++)
                    {
                        if (speicherMitarbeiter.getPositionBezeichnung().Equals((arrPosBez[i]).ToString()))
                        {
                            speicherMitarbeiter.setPositionId(arrPosId[i]);
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Login-Daten ausfüllen.", "Information", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    return;
                }

                int dBConnectOk = c.openConnection();
                if (dBConnectOk == 0)
                {
                    if (gLoginPosId == 1)
                    {
                        // String fuer Chef
                        strSQL = "UPDATE mitarbeiter SET position_id = '" + speicherMitarbeiter.getPositionId() + "', benutzername = '" + speicherMitarbeiter.getBenutzername() + "', vorname = '" + speicherMitarbeiter.getVorname() + "', nachname = '" + speicherMitarbeiter.getNachname() + "', geburtsdatum = '" + speicherMitarbeiter.getGebDatum() + "', strasse = '" + speicherMitarbeiter.getStrasse() + "', hausnummer = '" + speicherMitarbeiter.getHausnummer() + "', plz = '" + speicherMitarbeiter.getPlz() + "', ort = '" + speicherMitarbeiter.getOrt() + "', gehalt = '" + (speicherMitarbeiter.getGehalt().ToString()).Replace(",", ".") + "' WHERE mitarbeiter_id = " + gId.ToString() + ";";
                    }
                    else
                    {
                        //String fuer Mitarbeiter
                        strSQL = "UPDATE mitarbeiter SET strasse = '" + speicherMitarbeiter.getStrasse() + "', hausnummer = '" + speicherMitarbeiter.getHausnummer() + "', plz = '" + speicherMitarbeiter.getPlz() + "', ort = '" + speicherMitarbeiter.getOrt() + "' WHERE mitarbeiter_id = " + gId.ToString() + ";";
                    }
                    c.update(strSQL, "Mitarbeiter");
                    c.closeConnection();

                    gridMitarbeiterAktualisieren();
                    this.Close();  // Fenster schliessen
                }
            }
        }