Arkadaşlar listbox'ımın SelectionMode özelliği Multiple olarak seçili. Listbox'a verileri veritabanından dolduruyorum. Birden fazla satır seçip butona bastığımda aşağıdaki kodu çalıştırıyorum for (int i = 0; i < lstbx_kategoriler.Items.Count; i++) { if (lstbx_kategoriler.Items.Selected == true) { SqlCommand _cmd_kategori_kaydet = new SqlCommand("insert into uyeler_kategori(uye_id,kategori_id)" + "values(@uye_id,@kategori_id)", araclar.Koneksin()); _cmd_kategori_kaydet.Parameters.AddWithValue("@uye_id", Convert.ToInt32(_uye_id)); _cmd_kategori_kaydet.Parameters.AddWithValue("@kategori_id", Convert.ToInt32(lstbx_kategoriler.SelectedValue));
araclar.calistir(_cmd_kategori_kaydet); } }
if bloğunda seçili olan kayıt kadar dönüyor. Fakat selectedValue değeri her defasında ilk değeri alıyor. Seçtiğim kayıtları nasıl veritabanına yazdırabilirim çıkamadım işin içinden
SelectedValue elbetteki aynı değer gelir,
for (int i = 0; i < lstbx_kategoriler.Items.Count; i++) { if (lstbx_kategoriler.Items[i].Selected == true) { SqlCommand _cmd_kategori_kaydet = new SqlCommand("insert into uyeler_kategori(uye_id,kategori_id)" + "values(@uye_id,@kategori_id)", araclar.Koneksin()); _cmd_kategori_kaydet.Parameters.AddWithValue("@uye_id", Convert.ToInt32(_uye_id)); _cmd_kategori_kaydet.Parameters.AddWithValue("@kategori_id", Convert.ToInt32(lstbx_kategoriler.Items[i].value));