private void buttonVariabelLimRente_Click(object sender, EventArgs e)
        {
            int index = comboBoxRekeningen.SelectedIndex;

            if (ControleerValuta(textBoxVariabelLimRente.Text, out double variabelLimietRente, $"Foutief of geen {labelVariabelLimRente.Text.Substring(0,6).Trim()} opgegeven"))
            {
                try
                {
                    if (rekeningen[index] is Zichtrekening z)
                    {
                        z.Limiet = variabelLimietRente;
                    }
                    else
                    {
                        Spaarrekening s = (Spaarrekening)rekeningen[index];
                        s.Rente = variabelLimietRente;
                    }

                    LijstUpdaten(rekeningen[index], index);
                }
                catch (CustomException ex)
                {
                    MessageBox.Show(ex.Message, "Let op", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }

            textBoxVariabelLimRente.Clear();
        }
        private void formBank_Load(object sender, EventArgs e)
        {
            Bankrekening b;

            using (StreamReader teLezenBestand = new StreamReader("bankrekening.txt"))
            {
                while (!teLezenBestand.EndOfStream)
                {
                    string lijn = teLezenBestand.ReadLine();

                    if (!string.IsNullOrEmpty(lijn))
                    {
                        string[] record = lijn.Split(';');

                        if (record[0].Substring(0, 1) == "Z")
                        {
                            b = new Zichtrekening(record[0].Trim(), double.Parse(record[1].Trim()), int.Parse(record[2].Trim()), double.Parse(record[3].Trim()));
                        }
                        else
                        {
                            b = new Spaarrekening(record[0].Trim(), double.Parse(record[1].Trim()), int.Parse(record[2].Trim()), double.Parse(record[3].Trim()));
                        }

                        rekeningen.Add(b);
                    }
                }
            }

            UpdatenCombobox();
            comboBoxRekeningen.SelectedIndex = -1;

            ToonOfVerbergFormulierElementen(false, 227);
        }
        private void buttonSluiten_Click(object sender, EventArgs e)
        {
            using (StreamWriter teSchrijvenBestand = new StreamWriter("bankrekening.txt"))
            {
                for (int i = 0; i < rekeningen.Count; i++) //hier komt witregel vanonder in het bestand, bij het inlezen wordt nu gecontroleerd op isnullorempty
                {
                    if (rekeningen[i] is Zichtrekening z)
                    {
                        teSchrijvenBestand.WriteLine(z.Bankrekeningnummer + ";" + z.Saldo + ";" + z.AantalVerrichtingen + ";" + z.Limiet);
                    }
                    else
                    {
                        Spaarrekening s = (Spaarrekening)rekeningen[i];
                        teSchrijvenBestand.WriteLine(s.Bankrekeningnummer + ";" + s.Saldo + ";" + s.AantalVerrichtingen + ";" + s.Rente);
                    }
                }
            }

            this.Close();
        }
        private void buttonNieuw_Click(object sender, EventArgs e)
        {
            Bankrekening rekeningKlant;

            if (textBoxRekeningnummer.Text != "")
            {
                if (ControleerValuta(textBoxSaldo.Text, out double valuta, "Foutief of geen Saldo opgegeven, Saldo word ingesteld op €0,00"))
                {
                    rekeningKlant = new Zichtrekening("Z" + textBoxRekeningnummer.Text, valuta);

                    if (rdbSpaarrekening.Checked)
                    {
                        rekeningKlant = new Spaarrekening("S" + textBoxRekeningnummer.Text, valuta);
                    }

                    if (!ControleerDubbelRekeningnummer(rekeningKlant))
                    {
                        ToonOfVerbergFormulierElementen();

                        rekeningen.Add(rekeningKlant);
                        UpdatenCombobox();
                        comboBoxRekeningen.SelectedIndex = comboBoxRekeningen.FindString(rekeningKlant.ToString());
                        labelOverzicht.Text = rekeningKlant.Toongegevens();
                    }
                    else
                    {
                        MessageBox.Show("Rekeningnummer bestaat al!", "Let op", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
            }
            else
            {
                MessageBox.Show("Vul een rekeningnummer in!", "Let op", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            textBoxSaldo.Clear();
            textBoxRekeningnummer.Clear();
        }