private void ImprimerGroupes()
        {
            if (Donnee.ListeCompetiteurs.Any(c => c.PourImpression && c.Poule == null))
            {
                List <Competiteur> competiteursNonValides = Donnee.ListeCompetiteurs.Where(c => c.PourImpression && c.Poule == null).ToList();
                competiteursNonValides.OrderBy(c => c.Nom);
                MessageBox.Show(String.Format("{0}{1}Nom : {2}", "Des competiteurs ne sont pas présents", Environment.NewLine, string.Join(" ,", competiteursNonValides.Select(c => c.Nom)), "Erreur", MessageBoxButton.OK, MessageBoxImage.Error));
            }
            else
            {
                var listegroupes = new List <int>();

                foreach (var competiteur in Donnee.ListeCompetiteurs.Where(c => c.PourImpression))
                {
                    if (competiteur.Poule != null)
                    {
                        if (!listegroupes.Any(c => c == competiteur.Poule))
                        {
                            listegroupes.Add((int)competiteur.Poule);
                        }
                    }
                }

                var lesGroupes = new List <Groupe>();

                foreach (var groupe in listegroupes)
                {
                    var groupeTemp = new Groupe()
                    {
                        MaxCompetiteursParPoule = Donnee.NombreParPoule, id = groupe
                    };

                    groupeTemp.Competiteurs.AddRange(Donnee.ListeCompetiteurs.Where(c => c.Poule == groupe && c.PourImpression));
                    lesGroupes.Add(groupeTemp);
                }
                if (!lesGroupes.Any(g => !g.EstValide))
                {
                    var fenetreImpression = new FenetreImpression(lesGroupes, Donnee.NomCompetition, Donnee.DateCompetition);
                    fenetreImpression.ShowDialog();
                }
                else
                {
                    List <int> listeGroupesNonValides = lesGroupes.Where(g => !g.EstValide).Select(g => g.id).ToList();
                    listeGroupesNonValides.Sort();
                    MessageBox.Show(String.Format("{0}{1}Poules n° : {2}", "Des poules ont un mauvais nombre de compétiteurs ", Environment.NewLine, string.Join(", ", listeGroupesNonValides), "Erreur", MessageBoxButton.OK, MessageBoxImage.Error));
                }
            }
        }
        private void ImprimerGroupes()
        {
            if (Donnee.ListeCompetiteurs.Any(c => c.PourImpression && c.Poule == null))
            {
                List<Competiteur> competiteursNonValides = Donnee.ListeCompetiteurs.Where(c => c.PourImpression && c.Poule == null).ToList();
                competiteursNonValides.OrderBy(c => c.Nom);
                MessageBox.Show(String.Format("{0}{1}Nom : {2}", "Des competiteurs ne sont pas présents", Environment.NewLine, string.Join(" ,", competiteursNonValides.Select(c => c.Nom)), "Erreur", MessageBoxButton.OK, MessageBoxImage.Error));
            }
            else
            {
                var listegroupes = new List<int>();

                foreach (var competiteur in Donnee.ListeCompetiteurs.Where(c => c.PourImpression))
                {
                    if (competiteur.Poule != null)
                    {
                        if (!listegroupes.Any(c => c == competiteur.Poule))
                        {
                            listegroupes.Add((int)competiteur.Poule);
                        }
                    }
                }

                var lesGroupes = new List<Groupe>();

                foreach (var groupe in listegroupes)
                {
                    var groupeTemp = new Groupe() { MaxCompetiteursParPoule = Donnee.NombreParPoule, id = groupe };

                    groupeTemp.Competiteurs.AddRange(Donnee.ListeCompetiteurs.Where(c => c.Poule == groupe && c.PourImpression));
                    lesGroupes.Add(groupeTemp);
                }
                if (!lesGroupes.Any(g => !g.EstValide))
                {
                    var fenetreImpression = new FenetreImpression(lesGroupes, Donnee.NomCompetition, Donnee.DateCompetition);
                    fenetreImpression.ShowDialog();
                }
                else
                {
                    List<int> listeGroupesNonValides = lesGroupes.Where(g => !g.EstValide).Select(g => g.id).ToList();
                    listeGroupesNonValides.Sort();
                    MessageBox.Show(String.Format("{0}{1}Poules n° : {2}", "Des poules ont un mauvais nombre de compétiteurs ", Environment.NewLine, string.Join(", ", listeGroupesNonValides), "Erreur", MessageBoxButton.OK, MessageBoxImage.Error));
                }
            }

        }