/// <summary>
 /// Constructor, welke constructor wordt niet gebruikt
 /// </summary>
 /// <param name="stapel">stapel kaarten</param>
 /// <param name="kleur">kleur van de expeditie</param>
 public ExpeditieViewModel(IExpeditieStapel stapel, string kleur)
 {
     _expeditieStapel = new ObservableCollection<KaartViewModel>();
     SetKleur(kleur);
     VulExpeditieAan(stapel);
     this.Score = 0;
 }
        /// <summary>
        /// Verwerk beurt in iedere expeditie
        /// </summary>
        /// <param name="stapel">stapel kaarten van de expeditie</param>
        public void VerwerkBeurt(IExpeditieStapel stapel)
        {
            bool expeditieGewijzigd = (stapel.AantalKaarten != _expeditieStapel.Count);

            if (expeditieGewijzigd)
            {
                VulExpeditieAan(stapel);
                this.Score = stapel.GetScore();
            }
        }
        /// <summary>
        /// Vul expeditie aan met nieuwe kaarten.  Aanvullen is is fraaier dan hele collectie vullen 
        /// ivm renderen scherm
        /// </summary>
        /// <param name="stapel">alle kaarten in de expeditie</param>
        private void VulExpeditieAan(IExpeditieStapel stapel)
        {
            //optimalisatie: Kaarten kunnen alleen maar toegevoegd worden
            for (int i = _expeditieStapel.Count; i < stapel.AantalKaarten; i++)
            {
                KaartViewModel kaart = new KaartViewModel(stapel.GetKaart(i));

                kaart.Offset = (i * -33).ToString();
                _expeditieStapel.Add(kaart);
            }
        }