public NieuweVraag(Gebruiker gebruiker)
        {
            InitializeComponent();

            this.gebruiker = gebruiker;
            sufix = "";
            pad = "";
        }
        public Taal(int waarde, Gebruiker gebruiker)
        {
            InitializeComponent();

            int volgnummer = 1;

            this.gebruiker = gebruiker;
            antwoorden = new List<string>();
            vragen = new List<Vraag>();
            gevraagd = new List<Vraag>();
            timer = new DispatcherTimer();
            vraagNummer = 1;
            scoreTaal = 0;
            aantalVragen = 1;

            statusProgressBar.Value = 0;
            statusProgressBar.Maximum = 1500;
            timer.Interval = TimeSpan.FromMilliseconds(1);

            if (waarde == 1 || waarde == 0)
            {
                statusProgressBar.Maximum = 600;
                graad = "makkelijk";
            }
            else if (waarde == 2)
            {
                statusProgressBar.Maximum = 600;
                graad = "moeilijk";
            }

            filename = "Rapporten/" + gebruiker.Naam + " " + gebruiker.Achternaam + "/Taal" + "/rapport-" + gebruiker.Naam + Convert.ToString(DateTime.Now.Day) + "-" + Convert.ToString(DateTime.Now.Month) + "-" + Convert.ToString(DateTime.Now.Year);

            while (File.Exists(filename + ".txt"))
            {

                if (File.Exists(filename + "(" + Convert.ToString(volgnummer) + ")" + ".txt"))
                {
                    volgnummer++;
                }
                else
                {
                    filename = filename + "(" + volgnummer + ")";
                }

            }
            filename = filename + ".txt";

            GenereerLijstVragen(waarde);

            maxVraag = vragen.Count;

            timer.Tick += timer_Tick;
            timer.Start();

            AlgemeneVraagmaken();
        }
        public Kennis(int moeilijkheid, Gebruiker gebruiker)
        {
            InitializeComponent();

                int volgnummer = 1;
                this.gebruiker = gebruiker; ;

                vragen = new List<Vraag>();
                gevraagd = new List<Vraag>();
                antwoorden = new List<string>();

                aantalJuist = 0;
                aantalVragen = 10;
                vraagNr = 0;
                graad = "makkelijk";

                timer = new DispatcherTimer();
                timer.Interval = TimeSpan.FromSeconds(1);
                timer.Tick += timer_Tick;

                filename = "Rapporten/" + gebruiker.Naam + " " + gebruiker.Achternaam + "/Kennis" + "/rapport-" + gebruiker.Naam + " " + Convert.ToString(DateTime.Now.Day) + "-" + Convert.ToString(DateTime.Now.Month) + "-" + Convert.ToString(DateTime.Now.Year);

                while (File.Exists(filename + ".txt"))
                {

                    if (File.Exists(filename + "(" + Convert.ToString(volgnummer) + ")" + ".txt"))
                    {
                        volgnummer++;
                    }
                    else
                    {
                        filename = filename + "(" + volgnummer + ")";
                    }

                }
                filename = filename + ".txt";

                //zet de tijd naar gelang de moeilijkheidsgraad
                if (moeilijkheid == 1)
                {
                    aantalVragen = 20;
                    statusProgressBar.Maximum = 20;
                    graad = "middelmatig";
                }
                else if (moeilijkheid == 2)
                {
                    aantalVragen = 30;
                    statusProgressBar.Maximum = 12;
                    graad = "moeilijk";
                }

                maakVraagLijst();
                maxVraag = vragen.Count;
                MaakVraag();
        }
        public Overzicht(Gebruiker gebruiker)
        {
            InitializeComponent();

            this.gebruiker = gebruiker;
            linenr = 0;
            maxlinenr = 0;
            path = "";

            vragen = new List<string>();
        }
        public Startscherm(Gebruiker g)
        {
            InitializeComponent();
            gebruiker = g;

            if(g.Email != "*****@*****.**")
            {
                voegToeButton.Visibility = System.Windows.Visibility.Hidden;
                verwijderButton.Visibility = System.Windows.Visibility.Hidden;
                zoekLabel.Visibility = System.Windows.Visibility.Hidden;
                zoekButton.Visibility = System.Windows.Visibility.Hidden;
                voegtoeMenuItem.IsEnabled = false;
                verwijderMenuItem.IsEnabled = false;
                rapportenMenuItem.IsEnabled = false;
            }
        }
        //Jannes Houben
        //Hoofdrekenen
        public Resultaat(int score, List<string> juisteOplossing, List<string> juistOfFout, List<string> gevraagd, List<string> antwoorden, string filename, string moeilijkheid, Gebruiker gebruiker)
        {
            InitializeComponent();
            this.gebruiker = gebruiker;
            SchrijfWegHoofdrekenen(score, juisteOplossing, juistOfFout, gevraagd, antwoorden, filename, moeilijkheid);
            this.score = score;

            switch (moeilijkheid)
            {
                case "makkelijk":
                    punten = score * 10;
                    break;
                case "middelmatig":
                    punten = score * 20;
                    break;
                case "moeilijk":
                    punten = score * 30;
                    break;
            }

            if (score < gevraagd.Count / 2)
            {
                resultaatTextBlock.Text = "Je bent niet geslaagd met een score van " + score + " op " + gevraagd.Count + ". Volgende keer beter. Je hebt " + punten + " seconden speeltijd";
                ToonAfbeelding(score, gevraagd.Count/2);
            }
            else
            {
                resultaatTextBlock.Text = "Je bent geslaagd met een score van " + score + " op " + gevraagd.Count + ". Goed gedaan ! Je hebt " + punten + " seconden speeltijd";
                ToonAfbeelding(score, gevraagd.Count / 2);
            }

            try
            {
                gebruiker.Tijd = gebruiker.Tijd + punten;
                gebruiker.SchrijfTijd(gebruiker.Email, gebruiker.Tijd);
            }
            catch (FileNotFoundException)
            {
                MessageBox.Show("file: " + gebruiker.Directory + " niet gevonden.");
            }
        }
        public Game(Gebruiker gebruiker)
        {
            InitializeComponent();
            timer = new DispatcherTimer();
            timer.Interval = new TimeSpan(0, 0, 1);

            animatietimer = new DispatcherTimer();
            animatietimer.Interval = new TimeSpan(10000);

            vierkantList = new List<SpelEntiteit>();
            bolList = new List<MensSpeler>();
            entiteitList = new List<SpelEntiteit>();

            this.gebruiker = gebruiker;

            statusProgressBar.Maximum = gebruiker.Tijd;
            timer.Tick += timer_Tick;
            animatietimer.Tick += animatietimer_Tick;
            animatietimer.Start();
            timer.Start();
        }
        // Gaat zoeken in de txt naar het email adres dat in de textbox staan en de lijn eronder controleren op het wachtwoord.
        private void checkLogin()
        {
            try
            {
                if (emailTextBox.Text.Length == 0) { throw new EmptyFieldException("Vul een emailadres in!"); }
                if (passwordPasswordBox.Password.Length == 0) { throw new EmptyFieldException("Vul een wachtwoord in!"); }

                string mail = Convert.ToString(emailTextBox.Text).ToLower();
                int lijnNummer = ZoekLijnNummer(mail);

                // we hashen de ingave in password box en vergelijken die met het wachtwoord die we vinden door de lijnnummer van het gevonden emailadres met 1 te verhogen.
                if (Hashing.HashIt(passwordPasswordBox.Password).Equals(File.ReadLines("Users/Users.txt").Skip(lijnNummer + 1).Take(1).First()))
                {
                    string naam = File.ReadLines("Users/Users.txt").Skip(lijnNummer - 2).Take(1).First();
                    string achternaam = File.ReadLines("Users/Users.txt").Skip(lijnNummer - 1).Take(1).First();
                    string email = File.ReadLines("Users/Users.txt").Skip(lijnNummer).Take(1).First();
                    string directory = File.ReadLines("Users/Users.txt").Skip(lijnNummer + 2).Take(1).First();
                    int tijd = Convert.ToInt32((File.ReadLines("Users/Users.txt").Skip(lijnNummer + 3).Take(1).First()));
                    gebruiker = new Gebruiker(naam, achternaam, directory, email, tijd);
                    Startscherm start = new Startscherm(gebruiker);
                    start.Left = 400;
                    start.Top = 200;
                    start.Show();
                    this.Hide();

                }
                else
                {
                    MessageBox.Show("Foutief wachtwoord!");
                }
            }
            catch (FileNotFoundException)
            {
                MessageBox.Show("file not found !");
            }
        }
        public Wiskunde(int moeilijkheid, Gebruiker gebruiker)
        {
            InitializeComponent();

            #region Hoofrekenen initialiseren
            //Object van klasse "Hoofdrekenen" aanmaken.
            hr = new Hoofdrekenen();

            //Random generator declareren
            random1 = new Random();

            //Dispatchertimer
            timer2 = new DispatcherTimer();
            timer2.Interval = TimeSpan.FromSeconds(1);
            timer2.Tick +=timer2_Tick;

            gevraagdHoofdrekenen = new List<string>();
            juisteOplossing = new List<string>();
            antwoordenHoofdrekenen = new List<string>();
            juistOfFoutList = new List<string>();

            //zet de tijd naar gelang de moeilijkheidsgraad
            if (moeilijkheid == 2)
            {
                statusProgressBar.Maximum = 30;
            }
            else if (moeilijkheid == 1)
            {
                statusProgressBar.Maximum = 60;
            }
            #endregion

            #region HoofdrekenLayout aanmaken
            //Layout voor hoofrekenen maken
            maakHoofdrekenLayout();
            #endregion

            #region HoofdrekenLayout onzichtbaar maken
            maakHoofdrekenLayoutOnzichtbaar();
            #endregion

            #region MeetkundeLayout aanmaken
            maakMeetkundeLayout();
            #endregion

            #region Meetkunde onzichtbaar maken
            maakMeetkundeOnzichtbaar();
            #endregion

            #region MetendRekenenLayout aanmaken
            maakMetendRekenenLayout();
            #endregion

            #region MetendRekenen onzichtbaar maken
            maakMetendRekenenOnzichtbaar();
            #endregion

            #region initialiseren vragenlijst
            int volgnummer = 1;
            this.gebruiker = gebruiker;

            vragen = new List<Vraag>();
            gevraagd = new List<Vraag>();
            antwoorden = new List<string>();

            aantalVragen = 10;
            vraagNr = 0;
            graad = "makkelijk";

            timer = new DispatcherTimer();
            timer.Interval = TimeSpan.FromSeconds(1);
            timer.Tick += timer_Tick;

            filename = "Rapporten/" + gebruiker.Naam + " " + gebruiker.Achternaam + "/Wiskunde" + "/rapport-" + gebruiker.Naam + " " + Convert.ToString(DateTime.Now.Day) + "-" + Convert.ToString(DateTime.Now.Month) + "-" + Convert.ToString(DateTime.Now.Year);

            while (File.Exists(filename + ".txt"))
            {
                if (File.Exists(filename + "(" + Convert.ToString(volgnummer) + ")" + ".txt"))
                {
                    volgnummer++;
                }
                else
                {
                    filename = filename + "(" + volgnummer + ")";
                }
            }

            filename = filename + ".txt";

            //zet de tijd naar gelang de moeilijkheidsgraad
            if (moeilijkheid == 1)
            {
                aantalVragen = 20;
                statusProgressBar.Maximum = 20;
                graad = "middelmatig";
            }
            else if (moeilijkheid == 2)
            {
                aantalVragen = 30;
                statusProgressBar.Maximum = 12;
                graad = "moeilijk";
            }
            #endregion
        }