Пример #1
0
        /// <summary>
        /// Valide la création ou la modification d'un article dans la BDD.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ConfirmButton_Click(object sender, EventArgs e)
        {
            DAOArticle     daoArticle     = new DAOArticle();
            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();
            DAOMarque      daoMarque      = new DAOMarque();

            article.RefArticle  = RefTextBox.Text;
            article.Description = DescTextBox.Text;

            article.Famille    = FamilleComboBox.SelectedItem.ToString();
            article.RefFamille = daoFamille.GetRefFamille(article.Famille);

            article.SousFamille    = SousFamilleComboBox.SelectedItem.ToString();
            article.RefSousFamille = daoSousFamille.GetRefSousFamille(article.RefFamille, article.SousFamille);

            article.Marque    = MarqueComboBox.SelectedItem.ToString();
            article.RefMarque = daoMarque.GetRefMarque(article.Marque);

            article.PrixHT   = float.Parse(PrixTextBox.Text);
            article.Quantite = (int)QuantiteNumericUpDown.Value;

            daoArticle.AddOrUpdateArticle(article);
            Close();
        }
Пример #2
0
        /// <summary>
        /// Recharge la liste de sous-famille de la comboBox correspondante lorsque la famille sélectionnée change.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void FamilleComboBox_SelectedIndexChanged(object sender, EventArgs e)
        {
            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();

            SousFamilleComboBox.Items.Clear();
            LoadSousFamilleComboBox(daoFamille.GetRefFamille(FamilleComboBox.SelectedItem.ToString()));
            //Si on modifie un article et qu'on resélectionne sa famille initiale, on initialise l'index de la comboBox à celui de la sous famille initiale.
            if (Mode == ModeEnum.Edit && string.Compare(article.Famille, FamilleComboBox.SelectedItem.ToString()) == 0)
            {
                int index = GetIndexOfItem(daoSousFamille.GetNomSousFamille(article.RefSousFamille), SousFamilleComboBox.Items);
                if (index != -1)
                {
                    SousFamilleComboBox.SelectedIndex = index;
                }
                else
                {
                    Console.WriteLine("Erreur sur l'indice de la sous famille de l'article dans la SousFamilleComboBox");
                }
            }
            //Sinon, on met juste la valeur de l'indice de la combo box à 0
            else
            {
                SousFamilleComboBox.SelectedIndex = 0;
            }

            CheckFields();
        }
Пример #3
0
        /// <summary>
        /// Constructeur
        /// </summary>
        /// <param name="Famille"></param>
        public FamilleForm(string Famille = "")
        {
            InitializeComponent();

            this.Famille = Famille;

            // Si on veut créer une nouvelle famille
            if (Famille == "")
            {
                Text = "Créer une nouvelle famille";
                ConfirmButton.Text    = "Ajouter la famille";
                RefTextBox.Text       = "Réference générée automatiquement";
                ConfirmButton.Enabled = false;
            }
            // Si on veut modifier une famille existante
            else
            {
                DAOFamille daoFamille = new DAOFamille();

                Text = "Modifier la famille [" + Famille + "]";
                ConfirmButton.Text    = "Modifier la famille";
                ConfirmButton.Enabled = true;

                RefTextBox.Text  = daoFamille.GetRefFamille(Famille).ToString();
                NameTextBox.Text = Famille;
            }
        }
Пример #4
0
        /// <summary>
        /// Lorsqu'on appuie sur le bouton modifier on appele la méthode ModifierProduit pour modifier
        /// la base de données
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnModifier_Click(object sender, EventArgs e)
        {
            Famille LaFamille = DAOFamille.RechercherIdFamille(cbxFamille.Text.ToString());
            Produit LeProduit = new Produit(Int32.Parse(txtReference.Text), txtNom.Text, txtDosage.Text,
                                            Double.Parse(txtPrix.Text), txtContre.Text, txtEffet.Text, LaFamille.GetId());

            DAOProduit.ModifierProduit(LeProduit);
        }
Пример #5
0
        /// <summary>
        ///  Permet de remplir les champs des texte boxe
        /// </summary>
        /// <param name="nomMedClick"></param>
        private void RemplirInfo(object nomMedClick)
        {
            Famille LaFamille;

            LaFamille         = DAOFamille.RemplirInfoMed(nomMedClick.ToString());
            txtReference.Text = LaFamille.GetId().ToString();
            txtNom.Text       = LaFamille.GetNom();
        }
Пример #6
0
        /// <summary>
        /// permet de remplir au chargement de la page le dataGridView
        /// grace au méthode chargerFamille()
        /// </summary>
        public GsbFamille()
        {
            InitializeComponent();
            List <Famille> LesFamilles = DAOFamille.chargerFamille();

            for (int i = 0; i < LesFamilles.Count(); i++)
            {
                Console.Write(i);
                dgvFamille.Rows.Add(LesFamilles[i].GetId(), LesFamilles[i].GetNom());
            }
        }
Пример #7
0
        /// <summary>
        /// On nettoie le DataGridView,
        /// Lorsqu'on appuie sur le bouton rafraichir on appele la méthode chargerFamille pour remplir
        /// le dataGridView
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnRafraichire_Click(object sender, EventArgs e)
        {
            dgvFamille.Rows.Clear();
            List <Famille> LesFamilles = DAOFamille.chargerFamille();

            for (int i = 0; i < LesFamilles.Count(); i++)
            {
                Console.Write(i);
                dgvFamille.Rows.Add(LesFamilles[i].GetId(), LesFamilles[i].GetNom());
            }
        }
Пример #8
0
        /// <summary>
        /// Permet de recharger le dataGridView par rapport au nom que l'on met dans le texte box
        /// grâce à la méthode RechercherNomFamille(string nom)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtRechercherFamille_TextChanged(object sender, EventArgs e)
        {
            dgvFamille.Rows.Clear();
            List <Famille> LaFamille = DAOFamille.RechercherNomFamille(txtRechercherFamille.Text);

            for (int i = 0; i < LaFamille.Count(); i++)
            {
                Console.Write(i);
                dgvFamille.Rows.Add(LaFamille[i].GetId(), LaFamille[i].GetNom());
            }
        }
Пример #9
0
        /// <summary>
        /// Charge les données de chaque ComboBox (ie : La liste des familles, La liste des sous familles de cette famille et la liste des marques)
        /// </summary>
        public void InitializeComboBox()
        {
            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();
            DAOMarque      daoMarque      = new DAOMarque();

            //On charge la liste des familles
            FamilleComboBox.Items.AddRange(daoFamille.GetAllFamilles().ToArray <object>());
            //Si on modifie un article, on initialise la valeur de la comboBox correspondante à la famille originale de l'article
            if (Mode == ModeEnum.Edit)
            {
                int index = GetIndexOfItem(article.Famille, FamilleComboBox.Items);
                if (index != -1)
                {
                    FamilleComboBox.SelectedIndex = index;
                }
                else
                {
                    Console.WriteLine("Erreur sur l'indice de la famille de l'article dans la FamilleComboBox");
                }

                //On charge la liste des sous-familles de la famille sélectionnée
                LoadSousFamilleComboBox(article.RefFamille);
                //Si la famille actuellement sélectionnée est celle de l'article pré-modification (originale), alors on initialise la valeur de la comboBox correspondante à la sous-famille
                //originale de l'article
                index = GetIndexOfItem(daoSousFamille.GetNomSousFamille(article.RefSousFamille), SousFamilleComboBox.Items);
                if (index != -1)
                {
                    SousFamilleComboBox.SelectedIndex = index;
                }
                else
                {
                    Console.WriteLine("Erreur sur l'indice de la sous famille de l'article dans la SousFamilleComboBox");
                }
            }

            //On charge la liste des marques
            MarqueComboBox.Items.AddRange(daoMarque.GetAllMarques().ToArray <object>());
            //Si on modifie un article, on initialise la valeur de la comboBox correspondante à la marque originale de l'article
            if (Mode == ModeEnum.Edit)
            {
                int index = GetIndexOfItem(article.Marque, MarqueComboBox.Items);
                if (index != -1)
                {
                    MarqueComboBox.SelectedIndex = index;
                }
                else
                {
                    Console.WriteLine("Erreur sur l'indice de la marque de l'article dans la MarqueComboBox");
                }
            }
        }
Пример #10
0
        /// <summary>
        /// Permet de recharger le dataGridView par rapport au nom que l'on met dans le texte box
        /// grâce à la méthode RechercheProduit(string nom)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtRechercherProduit_TextChanged(object sender, EventArgs e)
        {
            dgvProduits.Rows.Clear();
            List <Produit> LeProduit = DAOProduit.RechercherProduit(txtRechercherProduit.Text);

            for (int i = 0; i < LeProduit.Count(); i++)
            {
                Famille fam = DAOFamille.RechercherFamille(LeProduit[i]);
                Console.Write(i);
                dgvProduits.Rows.Add(LeProduit[i].GetNom(), LeProduit[i].GetDosage(), LeProduit[i].Getprix(),
                                     LeProduit[i].GetContreIndic(), LeProduit[i].GetEfets(), fam.GetNom());
            }
        }
Пример #11
0
        /// <summary>
        /// On nettoie le DataGridView,
        /// Lorsqu'on appuie sur le bouton rafraichir on appele la méthode chargerProduit pour remplir
        /// le dataGridView
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnRafraichire_Click(object sender, EventArgs e)
        {
            dgvProduits.Rows.Clear();
            List <Produit> LesProduits = DAOProduit.chargerProduit();

            for (int i = 0; i < LesProduits.Count(); i++)
            {
                Famille fam = DAOFamille.RechercherFamille(LesProduits[i]);
                Console.Write(i);
                dgvProduits.Rows.Add(LesProduits[i].GetNom(), LesProduits[i].GetDosage(), LesProduits[i].Getprix(),
                                     LesProduits[i].GetContreIndic(), LesProduits[i].GetEfets(), fam.GetNom());
            }
        }
Пример #12
0
        /// <summary>
        /// Actualise le contenu de la StatusStrip.
        /// </summary>
        private void RefreshStatusStrip()
        {
            DAOArticle     daoArticle     = new DAOArticle();
            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();
            DAOMarque      daoMarque      = new DAOMarque();

            // ### TODO : créer des méthodes "GetCount" dans le DAO, elles seront plus rapides
            int NombreArticles = daoArticle.GetAllArticles().Count;
            int NombreFamilles = daoFamille.GetAllFamilles().Count;
            int NombreMarques  = daoMarque.GetAllMarques().Count;

            StripStatusLabel.Text = NombreArticles + " articles répartis en " + NombreFamilles + " familles / " + NombreMarques + " marques";
        }
Пример #13
0
        /// <summary>
        /// Permet de remplir les champs des texte boxe
        /// </summary>
        /// <param name="nomMedClick"></param>
        private void RemplirInfo(object nomMedClick)
        {
            Produit LeProduits;

            LeProduits        = DAOProduit.RemplirInfoMed(nomMedClick.ToString());
            txtReference.Text = LeProduits.GetReference().ToString();
            txtNom.Text       = LeProduits.GetNom();
            txtDosage.Text    = LeProduits.GetDosage();
            txtPrix.Text      = LeProduits.Getprix().ToString();
            txtEffet.Text     = LeProduits.GetEfets();
            txtContre.Text    = LeProduits.GetContreIndic();
            Famille LaFamille = DAOFamille.RechercherFamille(LeProduits);

            cbxFamille.Text = LaFamille.GetNom();
        }
Пример #14
0
        /// <summary>
        /// Event déclenché lors d'un clic sur le bouton de confirmation.
        /// Ajoute ou modifie la famille
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ConfirmButton_Click(object sender, EventArgs e)
        {
            DAOFamille daoFamille = new DAOFamille();

            // Si on veut créer une famille
            if (Famille == "")
            {
                daoFamille.AddFamille(NameTextBox.Text);
                Close();
            }
            // Si on veut modifier une famille existante
            else
            {
                daoFamille.UpdateFamille(daoFamille.GetRefFamille(Famille), NameTextBox.Text);
                Close();
            }
        }
Пример #15
0
        /// <summary>
        /// Event déclenché lors d'un clic sur le bouton de confirmation.
        /// Ajoute ou modifie la sous-famille.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ConfirmButton_Click(object sender, EventArgs e)
        {
            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();

            // Si on veut créer une sous-famille
            if (SousFamille == "")
            {
                string SelectedItem = FamilleComboBox.Items[FamilleComboBox.SelectedIndex].ToString();
                daoSousFamille.AddSousFamille(daoFamille.GetRefFamille(SelectedItem), NameTextBox.Text);
                Close();
            }
            // Si on veut modifier une sous-famille existante
            else
            {
                int RefFamille = daoFamille.GetRefFamille(FamilleComboBox.Items[FamilleComboBox.SelectedIndex].ToString());
                daoSousFamille.UpdateSousFamille(daoSousFamille.GetRefSousFamille(RefFamille, SousFamille), NameTextBox.Text);
                Close();
            }
        }
Пример #16
0
        /// <summary>
        /// Constructeur
        /// </summary>
        /// <param name="Famille"></param>
        /// <param name="SousFamille"></param>
        public SousFamilleForm(string Famille = "", string SousFamille = "")
        {
            InitializeComponent();

            this.Famille     = Famille;
            this.SousFamille = SousFamille;

            // On remplit la combo box
            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();
            List <string>  ListeFamilles  = daoFamille.GetAllFamilles();

            foreach (string Nom in ListeFamilles)
            {
                FamilleComboBox.Items.Add(Nom);
            }
            FamilleComboBox.SelectedIndex = 0;

            // Si on veut créer une nouvelle famille
            if (SousFamille == "")
            {
                Text = "Créer une nouvelle sous-famille";
                ConfirmButton.Text = "Ajouter la sous-famille";
                RefTextBox.Text    = "Réference générée automatiquement";
            }
            // Si on veut modifier une sous-famille existante
            else
            {
                Text = "Modifier la sous-famille [" + SousFamille + "]";
                ConfirmButton.Text      = "Modifier la sous-famille";
                FamilleComboBox.Enabled = false;

                FamilleComboBox.SelectedIndex = FamilleComboBox.FindString(Famille);

                RefTextBox.Text  = daoSousFamille.GetRefSousFamille(daoFamille.GetRefFamille(Famille), SousFamille).ToString();
                NameTextBox.Text = SousFamille;
            }

            UpdateConfirmButton();
        }
Пример #17
0
        /// <summary>
        /// permet de remplir au chargement de la page le dataGridView et le comboBoxe
        /// grace au méthode chargerProduit() et chargerFamille()
        /// </summary>
        public GsbAccueil()
        {
            InitializeComponent();
            List <Produit> LesProduits = DAOProduit.chargerProduit();

            for (int i = 0; i < LesProduits.Count(); i++)
            {
                Famille fam = DAOFamille.RechercherFamille(LesProduits[i]);
                Console.Write(i);
                dgvProduits.Rows.Add(LesProduits[i].GetNom(), LesProduits[i].GetDosage(), LesProduits[i].Getprix(),
                                     LesProduits[i].GetContreIndic(), LesProduits[i].GetEfets(), fam.GetNom());
            }


            List <Famille> LesFamille = DAOFamille.chargerFamille();

            for (int i = 0; i < LesFamille.Count(); i++)
            {
                Console.Write(i);
                cbxFamille.Items.Add(LesFamille[i].GetNom());
            }
        }
Пример #18
0
        /// <summary>
        /// Actualise le contenu de la TreeView.
        /// </summary>
        private void RefreshTreeView()
        {
            TreeView.BeginUpdate();

            // On vide les noeuds "Familles" et "Marques"
            TreeView.Nodes[1].Nodes.Clear();
            TreeView.Nodes[2].Nodes.Clear();

            DAOFamille     daoFamille     = new DAOFamille();
            DAOSousFamille daoSousFamille = new DAOSousFamille();
            DAOMarque      daoMarque      = new DAOMarque();

            // Ajout des noeuds "Familles"
            List <string> ListeFamilles = daoFamille.GetAllFamilles();

            foreach (string Famille in ListeFamilles)
            {
                TreeNode NodeFamille = new TreeNode(Famille);
                TreeView.Nodes[1].Nodes.Add(NodeFamille);

                // Ajout des noeuds "Sous-Famille"
                List <string> ListeSousFamilles = daoSousFamille.GetAllSousFamilles(daoFamille.GetRefFamille(Famille));
                foreach (string SousFamille in ListeSousFamilles)
                {
                    NodeFamille.Nodes.Add(SousFamille);
                }
            }

            // Ajout des noeuds "Marques"
            List <string> ListeMarques = daoMarque.GetAllMarques();

            foreach (string Marque in ListeMarques)
            {
                TreeView.Nodes[2].Nodes.Add(Marque);
            }

            TreeView.EndUpdate();
        }
Пример #19
0
        /// <summary>
        /// Lorsqu'on appuie sur le bouton modifier on appele la méthode ModifierProduit pour modifier
        /// la base de données
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnModifier_Click(object sender, EventArgs e)
        {
            Famille LaFamille = new Famille(Int32.Parse(txtReference.Text), txtNom.Text);

            DAOFamille.ModifierFamille(LaFamille);
        }
Пример #20
0
        /// <summary>
        /// Actualise le contenu de la ListView.
        /// </summary>
        private void RefreshListView()
        {
            // Paramètres de la ListView
            ListView.GridLines     = true;
            ListView.FullRowSelect = true;                // Sélection d'une ligne tout entière
            ListView.MultiSelect   = false;               // Pas possible de sélectionner plusieurs lignes
            ListView.Sorting       = SortOrder.Ascending; // Mode de tri par défaut

            //ListView.ContextMenu = ??? aller voir ListView.ContextMenu sur la doc

            // On nettoie la ListView
            ListView.Columns.Clear();
            ListView.Items.Clear();

            // ----------- AFFICHAGE DES COLONNES -----------
            // Si on veut afficher des articles
            if (ListViewDisplay == "ARTICLES")
            {
                ListView.Columns.Add("Réference", 75, HorizontalAlignment.Center);
                ListView.Columns.Add("Description", 150, HorizontalAlignment.Left);
                ListView.Columns.Add("Famille", 150, HorizontalAlignment.Left);
                ListView.Columns.Add("Sous-Famille", 150, HorizontalAlignment.Left);
                ListView.Columns.Add("Marque", 100, HorizontalAlignment.Left);
                ListView.Columns.Add("PrixHT", 75, HorizontalAlignment.Center);
                ListView.Columns.Add("Quantité", 75, HorizontalAlignment.Center);
            }
            // Si on veut afficher des marques, des familles ou des sous-familles
            else
            {
                ListView.Columns.Add("Description", -2, HorizontalAlignment.Left);
            }

            // ----------- AFFICHAGE DES ELEMENTS -----------
            // Si on veut afficher des articles
            if (ListViewDisplay == "ARTICLES")
            {
                DAOArticle daoArticle = new DAOArticle();

                List <Article> ListeArticles = new List <Article>();

                // Tous les articles
                if (ListViewCondition == "")
                {
                    ListeArticles = daoArticle.GetAllArticles();
                }
                // Les articles d'une certaine marque
                else if (ListViewCondition == "MARQUE")
                {
                    ListeArticles = daoArticle.GetArticlesWhereMarque(ListViewValue);
                }
                // Les articles d'une certaine sous-famille
                else if (ListViewCondition == "SOUSFAMILLE")
                {
                    ListeArticles = daoArticle.GetArticlesWhereSousFamille(ListViewValue2, ListViewValue);
                }

                // On ajoute tous les articles à la ListView
                foreach (Article NewArticle in ListeArticles)
                {
                    ListViewItem Item = new ListViewItem(NewArticle.RefArticle);
                    Item.SubItems.Add(NewArticle.Description);
                    Item.SubItems.Add(NewArticle.Famille);
                    Item.SubItems.Add(NewArticle.SousFamille);
                    Item.SubItems.Add(NewArticle.Marque);
                    Item.SubItems.Add(NewArticle.PrixHT.ToString());
                    Item.SubItems.Add(NewArticle.Quantite.ToString());
                    ListView.Items.Add(Item);
                }
            }
            // Si on veut afficher toutes les marques
            else if (ListViewDisplay == "MARQUES")
            {
                DAOMarque daoMarque = new DAOMarque();

                List <string> ListeMarques = daoMarque.GetAllMarques();
                foreach (string Marque in ListeMarques)
                {
                    ListView.Items.Add(new ListViewItem(Marque));
                }
            }
            // Si on veut afficher toutes les familles
            else if (ListViewDisplay == "FAMILLES")
            {
                DAOFamille daoFamille = new DAOFamille();

                List <string> ListeFamilles = daoFamille.GetAllFamilles();
                foreach (string Famille in ListeFamilles)
                {
                    ListView.Items.Add(new ListViewItem(Famille));
                }
            }
            // Si on veut afficher les sous-familles d'une famille
            else if (ListViewDisplay == "SOUSFAMILLES")
            {
                DAOSousFamille daoSousFamille = new DAOSousFamille();
                DAOFamille     daoFamille     = new DAOFamille();

                List <string> ListeSousFamilles = daoSousFamille.GetAllSousFamilles(daoFamille.GetRefFamille(ListViewValue));
                foreach (string SousFamille in ListeSousFamilles)
                {
                    ListView.Items.Add(new ListViewItem(SousFamille));
                }
            }
            else
            {
                Console.WriteLine("Erreur in RefreshListView");
            }
        }
Пример #21
0
        /// <summary>
        /// Lorsqu'on appuie sur le bouton ajouter on appele la méthode CreerProduit pour l'ajouter à
        /// la base de données
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAjouter_Click(object sender, EventArgs e)
        {
            Famille LaFamille = new Famille(txtNom.Text);

            DAOFamille.CreerFamille(LaFamille);
        }
Пример #22
0
        /// <summary>
        /// Lorsqu'on appuie sur le bouton supprimer on appele la méthode SupprimerProduit pour supprimer dans
        /// la base de données
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSupprimer_Click(object sender, EventArgs e)
        {
            Famille LaFamille = new Famille(Int32.Parse(txtReference.Text));

            DAOFamille.SupprimerFamille(LaFamille);
        }
Пример #23
0
        /// <summary>
        /// Ouvre un MessageBox affichant un message relatif à la suppression d'un élément (article, marque, famille...).
        /// En fonction de l'action de l'utilisateur, supprime on non l'élément.
        /// </summary>
        private void OpenDeleteMenu()
        {
            string            Message = "Default Message";          // Message affiché dans la TextBox
            MessageBoxButtons Buttons = MessageBoxButtons.YesNo;    // Boutons de la TextBox

            // Si aucun élément n'est sélectionné, on s'arrête là
            if (ListView.SelectedItems.Count == 0)
            {
                return;
            }

            string SelectedItem = ListView.SelectedItems[0].Text;   // Element selectionné dans la ListView

            /* CHOIX DU MESSAGE ET DES BOUTONS A AFFICHER */
            // On veut supprimer un article
            if (ListViewDisplay == "ARTICLES")
            {
                Message = "Êtes vous sur de supprimer l'article [" + SelectedItem + "] ? \n" +
                          "Cette action est irréversible.";
            }
            // On veut supprimer une famille
            else if (ListViewDisplay == "FAMILLES")
            {
                DAOArticle     daoArticle    = new DAOArticle();
                List <Article> ListeArticles = daoArticle.GetAllArticles();
                bool           Found         = false;
                for (int Index = 0; Index < ListeArticles.Count && !Found; Index++)
                {
                    if (ListeArticles[Index].Famille == SelectedItem)
                    {
                        Found = true;
                    }
                }
                if (!Found)
                {
                    Message = "Êtes vous sur de supprimer la famille [" + SelectedItem + "] ? \n" +
                              "Toutes les sous-familles seront supprimées. Cette action est irréversible.";
                }
                else
                {
                    Message = "La famille [" + SelectedItem + "] est déjà assignée à plusieurs articles." +
                              "Si vous voulez vraiment supprimer cette famille, modifiez ou supprimez ces articles au préalable.";
                    Buttons = MessageBoxButtons.OK;
                }
            }
            // On veut supprimer une marque
            else if (ListViewDisplay == "MARQUES")
            {
                DAOArticle     daoArticle    = new DAOArticle();
                List <Article> ListeArticles = daoArticle.GetArticlesWhereMarque(SelectedItem);
                if (ListeArticles.Count == 0)
                {
                    Message = "Êtes vous sur de supprimer la marque [" + SelectedItem + "] ? \n" +
                              "Cette action est irréversible.";
                }
                else
                {
                    Message = "La marque [" + SelectedItem + "] est déjà assignée à plusieurs articles." +
                              "Si vous voulez vraiment supprimer cette marque, modifiez ou supprimez ces articles au préalable.";
                    Buttons = MessageBoxButtons.OK;
                }
            }
            // On veut supprimer une sous-familles
            else if (ListViewDisplay == "SOUSFAMILLES")
            {
                DAOArticle     daoArticle    = new DAOArticle();
                List <Article> ListeArticles = daoArticle.GetArticlesWhereSousFamille(ListViewValue, SelectedItem);
                if (ListeArticles.Count == 0)
                {
                    Message = "Êtes vous sur de supprimer la sous-famille [" + SelectedItem + "] ? \n" +
                              "Cette action est irréversible.";
                }
                else
                {
                    Message = "La sous-famille [" + SelectedItem + "] est déjà assignée à plusieurs articles." +
                              "Si vous voulez vraiment supprimer cette sous-famille, modifiez ou supprimez ces articles au préalable.";
                    Buttons = MessageBoxButtons.OK;
                }
            }

            // Si l'utiliseur choisit "Oui" ---> On supprime l'élément
            if (MessageBox.Show(Message, "Attention", Buttons) == DialogResult.Yes)
            {
                if (ListViewDisplay == "ARTICLES")
                {
                    DAOArticle daoArticle = new DAOArticle();
                    daoArticle.DeleteArticle(SelectedItem);
                }
                else if (ListViewDisplay == "MARQUES")
                {
                    DAOMarque daoMarque = new DAOMarque();
                    int       RefMarque = daoMarque.GetRefMarque(SelectedItem);
                    daoMarque.DeleteMarque(RefMarque);
                }
                else if (ListViewDisplay == "FAMILLES")
                {
                    DAOFamille daoFamille = new DAOFamille();
                    int        RefFamille = daoFamille.GetRefFamille(SelectedItem);
                    daoFamille.DeleteFamille(RefFamille);
                }
                else if (ListViewDisplay == "SOUSFAMILLES")
                {
                    DAOFamille     daoFamille     = new DAOFamille();
                    DAOSousFamille daoSousFamille = new DAOSousFamille();
                    int            RefFamille     = daoFamille.GetRefFamille(ListViewValue);
                    int            RefSousFamille = daoSousFamille.GetRefSousFamille(RefFamille, SelectedItem);
                    daoSousFamille.DeleteSousFamille(RefSousFamille);
                }
                // On actualise l'affichage
                RefreshDisplay();
            }
        }