/// <summary>
        /// Wandelt einen <see cref="Eintrag"/> in eine Liste vom Typ <c>string[]</c> um.
        /// </summary>
        /// <param name="eintrag">Der umzuwandelnde <see cref="Eintrag"/>.</param>
        /// <returns></returns>
        /// <exception cref="System.ArgumentNullException">Der angegebene <see cref="Eintrag"/> ist null.</exception>
        /// <exception cref="System.ArgumentException">Der angegebene <see cref="Eintrag"/> enthält keine Adresse.</exception>
        private string[] EintragZuAttribute(Eintrag eintrag)
        {
            if (eintrag == null)
                throw new ArgumentNullException("Eintrag darf nicht null sein.");
            if (eintrag.adresse == null)
                throw new ArgumentException("Der Eintrag muss eine Adresse haben.");

            List<string> attribute = new List<string>();

            if (eintrag is Firma)
            {
                Firma firma = eintrag as Firma;
                attribute.Add(firma.firmenname);
                attribute.Add("[kein Vorname]");
            }
            else if (eintrag is Person)
            {
                Person person = eintrag as Person;
                attribute.Add(person.familienname);
                attribute.Add(person.vorname);
            }
            else
            {
                attribute.Add("[Kein Name]");
                attribute.Add("[kein Vorname]");
            }

            attribute.Add(eintrag.kundenNummer);

            Adresse adresse = eintrag.adresse;
            attribute.AddRange(new List<string>
                {
                    adresse.straße, adresse.hausnummer, adresse.plz, adresse.ort
                });

            return attribute.ToArray();
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            MainWindow main = new MainWindow();

            using (BtmContext context = new BtmContext())
            {
                Eintrag          leerEintrag = new Eintrag();
                IQueryable <int> query       = from Stufe in context.Stufen
                                               where Stufe.MaterialName == cb_Stufe.Text
                                               select Stufe.StufId;
                var x = query.ToList();
                if (x.Any())
                {
                    leerEintrag.StufId = x[0];
                    if (tb_Bezeichnung.Text == "")
                    {
                        tb_Bezeichnung.Background = Brushes.Red;
                    }
                    else
                    {
                        tb_Bezeichnung.Background = Brushes.White;
                        leerEintrag.Bezeichnung   = tb_Bezeichnung.Text;
                    }
                    if (tb_LdfNr.Text == "")
                    {
                        tb_LdfNr.Background = Brushes.Red;
                    }
                    else
                    {
                        tb_LdfNr.Background = Brushes.White;
                        leerEintrag.LfdNr   = tb_LdfNr.Text;
                    }

                    bool eintcor = float.TryParse(tb_Anfangsbestand.Text, out float eintranf);
                    if (eintcor)
                    {
                        tb_Anfangsbestand.Background = Brushes.White;
                        leerEintrag.Anfangsbestand   = eintranf;
                        string einh = cb_Einheit.Text;
                        switch (einh)
                        {
                        case "Gramm":
                            leerEintrag.Einheit = 1;
                            break;

                        case "Kilogramm":
                            leerEintrag.Einheit = 2;
                            break;

                        case "":
                            leerEintrag.Einheit = 3;
                            MessageBox.Show("Keine Einheit ausgewählt!", "Warnung");
                            break;
                        }
                        if ((leerEintrag.Einheit == 1) || (leerEintrag.Einheit == 2))
                        {
                            leerEintrag.IsFirst = true;
                            context.Einträge.Add(leerEintrag);
                            context.SaveChanges();
                            main.UpdateTreeView();
                            this.Close();
                        }
                    }
                    else
                    {
                        tb_Anfangsbestand.Background = Brushes.Red;
                        string einh = cb_Einheit.Text;
                        switch (einh)
                        {
                        case "Gramm":
                            leerEintrag.Einheit = 1;
                            break;

                        case "Kilogramm":
                            leerEintrag.Einheit = 2;
                            break;

                        case "":
                            leerEintrag.Einheit = 3;
                            MessageBox.Show("Keine Einheit ausgewählt!", "Warnung");
                            break;
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Keine Stufe ausgewählt!", "Warnung");
                }
            }
        }