private void btnSelectionner_Click(object sender, EventArgs e) { int idMedicament = int.Parse(listeMedicaments.SelectedItems[0].SubItems[0].Text); int quantite = int.Parse(txtQtte.Text); string[] leMedicament = new string[2]; listMedocDemande.Items.Clear(); //Affichage du dictionnaire avec un nouvel élément Medicament unMedicament; // Création d'un médicament lorsque le client sélectionne un Médicament et lui odnne une quantité unMedicament = Passerelle.trouverMedicament(idMedicament); //Recherche d'un médicament dans la BDD grâce à son id string nomMedicament = unMedicament.getNom(); //Attribution de valeur aux variables int stockMedicament = unMedicament.getStock(); int seuilMedicament = unMedicament.getSeuil(); unMedicament = new Medicament(idMedicament, nomMedicament, stockMedicament, seuilMedicament); // Création d'un médicament if (txtQtte.Text == String.Empty || leMedicament[0] == String.Empty || leMedicament[1] == String.Empty) //erreur lorsque un champs est vide { MessageBox.Show("Vous n'avez pas saisi de médicament ou de quantité. Vérifiez également que la quantité est un nombre."); } else { int QtteMedicament = int.Parse(txtQtte.Text); txtQtte.Text = ""; if (contenuDemande.Count == 0) { contenuDemande.Add(unMedicament, QtteMedicament); } else { bool MedicamentExiste = false; foreach (Medicament MedicamentExistant in contenuDemande.Keys) { if (MedicamentExistant.getId() == unMedicament.getId()) { MedicamentExiste = true; unMedicament = MedicamentExistant; } } if (MedicamentExiste == false) { contenuDemande.Add(unMedicament, QtteMedicament); } else { contenuDemande[unMedicament] += QtteMedicament; } } foreach (KeyValuePair <Medicament, int> value in contenuDemande) { string[] monContenu = new string[3]; ListViewItem itm; unMedicament = value.Key; string uneId = unMedicament.getId() + ""; monContenu[0] = uneId; monContenu[1] = unMedicament.getNom(); monContenu[2] = contenuDemande[unMedicament] + ""; itm = new ListViewItem(monContenu); listMedocDemande.Items.Add(itm); } } }