/// <summary>
        /// Supprimer une cible de grouping
        /// </summary>
        private void btnSuppGrouping_Click(object sender, EventArgs e)
        {
            DialogResult dialogResult = MessageBox.Show("Voulez-vous vraiment supprimer cette cible?", "Supprimer une cible", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                ICible cibleARetirer = (ICible)olvCibleGrouping.SelectedObject;
                cibleARetirer.Remove();
                olvCibleGrouping.RemoveObject(cibleARetirer);
                m_tireur.ColCibleGrouping.Remove(cibleARetirer);

                m_olvTireur.UpdateObject(m_tireur);
                btnSuppGrouping.Enabled = false;
            }
        }
        private void btnAjouter_Click(object sender, EventArgs e)
        {
            switch (m_typeCible)
            {
            case enuTypeCible.Grouping:
                ICible cible = new CibleGrouping(m_tireur.Id, (float)numScore.Value, dtpDateTir.Value);
                m_tireur.ColCibleGrouping.Add(cible);
                if (m_frmTireur != null)
                {
                    m_frmTireur.ListeGrouping.AddObject(cible);
                    m_frmTireur.UpdateInfosGrouping();
                }
                break;

            case enuTypeCible.Precision:
            default:
                cible = new CiblePrecision(m_tireur.Id, (float)numScore.Value, dtpDateTir.Value);
                m_tireur.ColCiblePrecision.Add(cible);
                if (m_frmTireur != null)
                {
                    m_frmTireur.ListePrecision.AddObject(cible);
                    m_frmTireur.UpdateInfosPrecision();
                }
                break;
            }
            m_olvTireur.UpdateObject(m_tireur);

            this.Close();
        }
        /// <summary>
        /// Lorsque l'on double click sur un joueur sans équipe
        /// </summary>
        private void lsbTireurs_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            if (lsbTireurs.SelectedIndex == -1)
            {
                return;
            }
            if (cboEquipeAfficher.SelectedIndex == -1)
            {
                return;
            }

            ListeTireur colTireur = m_colTireur.GetTireurDansEquipe(0);
            Equipe      equipeSel = m_colEquipe.EquipeAt(cboEquipeAfficher.SelectedItem.ToString());

            colTireur[lsbTireurs.SelectedIndex].IdEquipe = equipeSel.Id;

            olvTireur.AddObject(colTireur[lsbTireurs.SelectedIndex]);

            m_olvPrincipal.UpdateObject(colTireur[lsbTireurs.SelectedIndex]);

            AfficherTireurs();
        }
        /// <summary>
        /// Ajoute un tireur dans la liste si le formulaire est bien rempli
        /// </summary>
        private void btnAjouter_Click(object sender, EventArgs e)
        {
            errError.Clear();

            if (txtNom.Text == string.Empty)
            {
                errError.SetError(txtNom, "Le nom du tireur ne peut pas être vide");
                this.errError.SetIconPadding(txtNom, -20);
                return;
            }

            if (m_tireur == null)
            {
                olvParent.AddObject(new Tireur(txtNom.Text, dtpDateDeNaissance.Value));
            }
            else
            {
                m_tireur.Nom             = txtNom.Text;
                m_tireur.DateDeNaissance = dtpDateDeNaissance.Value;
                olvParent.UpdateObject(m_tireur);
            }

            this.Close();
        }