//funkcja usuwająca produkt z bazy danych private void usun_Click(object sender, EventArgs e) { if (listaProduktow.SelectedIndex != -1) // sprawdzamy czy produkt został wybrany { Produkt p = BazaDanych.listaProduktow.ElementAt(listaProduktow.SelectedIndex); if (p.uzyty == 0) // sprawdzamy czy produkt jest użyty w liście bądź szablonie { foreach (string usuwana in p.kategorie) // usuwamy produkt z kategorii { int appeared = 0; foreach (Produkt item in BazaDanych.listaProduktow) { foreach (string istniejaca in item.kategorie) { if (istniejaca == usuwana) { appeared++; } } } if (appeared == 1) { for (int i = listaKategorii.Items.Count - 1; i >= 0; i--) { if ((String)listaKategorii.Items[i] == usuwana) { listaKategorii.Items.RemoveAt(i); } } } } p.usunProdukt(); // usuwamy produkt z bazy danych listaProduktow.Items.RemoveAt(listaProduktow.SelectedIndex); nazwa.Text = ""; cena.Text = ""; kategorie.Text = ""; } else { const string message = "Nie można usunąć produktu, które jest użyty w liście lub szablonie."; const string caption = "Niepoprawany produkt"; var result = MessageBox.Show(message, caption, MessageBoxButtons.OK, MessageBoxIcon.Question); } } else { const string message = "Wybierz produkt"; const string caption = "Niepoprawany produkt"; var result = MessageBox.Show(message, caption, MessageBoxButtons.OK, MessageBoxIcon.Question); } }