private void btnregaccept_Click(object sender, RoutedEventArgs e)
        {
            //Suche Benutzerprofil in der Datenbank
            BenutzerProfil tprofil = ctx.BenutzerProfil.Where(x => x.NutzerName == tbxregnickname.Text).FirstOrDefault();

            //Prüfe ob alle Felder ausgefüllt sind
            if (tbxregnickname.Text != "" && pwbxregpassword.Password != "")
            {
                //Wenn Benutzer nicht in Datenbank vorhanden ist, führe aus
                if (tprofil == null && pwbxregpasswordtwo.Password == pwbxregpassword.Password)
                {
                    //Lege Benutzer an
                    NutzerAnlegen(tbxregnickname.Text, pwbxregpassword.Password);
                    tbxregnickname.Clear();
                    pwbxregpassword.Clear();
                    pwbxregpasswordtwo.Clear();
                    //Gehe zur LoginSeite
                    mainWindow.Tologinpage();
                }
                else
                {
                    //Gib Fehlermeldung aus
                    MessageBox.Show("Nutzer schon vorhanden oder Passwörter nicht identisch!", "Warnung", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            else
            {
                MessageBox.Show("Es müssen alle Felder ausgefüllt werden");
            }
        }
        private string getSaltfromDB(string username)
        {
            //Benutzerprofil in Datenbank suchen
            BenutzerProfil bp = ctx.BenutzerProfil.Where(x => x.NutzerName.ToLower().Equals(username.ToLower())).FirstOrDefault();

            //gib den salt-wert zurück
            return(bp.salt);
        }
        private string getHashfromDB(string username)
        {
            //Benutzerprofil suchen in Datenbank
            BenutzerProfil bp = ctx.BenutzerProfil.Where(x => x.NutzerName.ToLower().Equals(username.ToLower())).FirstOrDefault();

            //gib den hash-Wert zurück
            return(bp.hash);
        }
        private void Changepassword(string Username, string NewPassword)
        {
            //Greife auf angemeldeten Benutzer zu
            BenutzerProfil User = ctx.BenutzerProfil.Where(x => x.NutzerName.Equals(Username)).FirstOrDefault();
            //Generiere Salt und Hash Wert für übergebenes Passwort
            SaltAndHash sh = GenerateSaltAndHash(NewPassword);

            //Ändere Hash und Salt
            User.hash = sh.hash;
            User.salt = sh.salt;
            //speichere Änderungen
            ctx.SaveChanges();
        }
        private string getSaltfromDB(string username)
        {
            //Benutzerprofil in Datenbank suchen
            BenutzerProfil bp = NutzerListe.Where(x => x.NutzerName.ToLower().Equals(username.ToLower())).FirstOrDefault();

            if (bp != null)
            {
                //wenn Benutzerprofil gefunden wurde gib den Saltwert des Passwortes zurück
                return(bp.salt);
            }
            else
            {
                //ansonsten gib einen Null wert zurück
                return(null);
            }
        }
        private string getHashfromDB(string username)
        {
            //Benutzerprofil suchen in Datenbank
            BenutzerProfil bp = NutzerListe.Where(x => x.NutzerName.ToLower().Equals(username.ToLower())).FirstOrDefault();

            if (bp != null)
            {
                //wenn ein Benutzerprofil mit dem übergebenen Namen gefunden wurde gib den hashwert des Passwortes zurück
                return(bp.hash);
            }
            else
            {
                //ansonsten gib einen Null wert zurück
                return(null);
            }
        }
        private void NutzerAnlegen(string NutzerName, string Password)
        {
            //Salt und Hash Werte für Passwort erzeugen
            SaltAndHash sh = GenerateSaltAndHash(Password);
            //neues Benutzerprofil anlegen
            BenutzerProfil benutzer = new BenutzerProfil();
            //Lager mit 1 Suchen
            LagerSystem lager = ctx.LagerSystem.Where(x => x.SystemNr == 1).FirstOrDefault();

            //Werte für neuen Benutzer eintragen
            benutzer.NutzerName = NutzerName;
            benutzer.hash       = sh.hash;
            benutzer.salt       = sh.salt;
            benutzer.NutzerNr   = NutzerNR + 1;
            //Benutzer LagersystemNr 1 zuordnen
            benutzer.LagerSystem.Add(lager);
            //Benutzer anlegen
            ctx.BenutzerProfil.Add(benutzer);
            //Eintrag speichern
            ctx.SaveChanges();
            MessageBox.Show("Registrierung erfolgreich!", "Info", MessageBoxButton.OK, MessageBoxImage.Information);
        }