C#'da MsSQL - Listbox veri silmede ilginç bir sorun.

Bu konuyu okuyanlar

desperado64

Müdavim
Katılım
14 Ağustos 2008
Mesajlar
12,240
Reaksiyon puanı
104
Puanları
48
Arkadaşlar derslik formu açıldığında listbox'a sadece sütunlar yükleniyor. Listboxdan veriyi seçip sil diyorum.

sil butununun kodları
Kod:
private void button3_Click(object sender, EventArgs e)
        {
            try
            {
                string colname = textBox1.Text;
                frm1.komut = new SqlCommand();
                frm1.baglanti.Open();
                frm1.komut.Connection = frm1.baglanti;
                string ifade = "ALTER TABLE Derslik DROP COLUMN " + colname;
                frm1.komut.CommandText = ifade;
                frm1.komut.ExecuteNonQuery();
                frm1.komut.Dispose();
                frm1.baglanti.Close();
                frm1.dt.Clear();
                listBox1.Items.Clear();
                listele();
            }
            catch (Exception)
            {

                MessageBox.Show("hata hata");
            }
        }

sil dedikten sonra seçilen içerik veritabanından siliniyor lakin tekrar listbox'a veri aktarılırken silinmiyormuş gibi aktarılıyor. Lakin VS'dan projeyi kapatıp açtığımda listbox'a veriler silinmiş sekilde (olması gerektiği gibi) aktarılıyor.

listele() fonksiyonu
Kod:
 public void listele()
        {
            frm1.baglanti.Open();
            frm1.sqlAdpter = new SqlDataAdapter("select * from Derslik", frm1.baglanti);
            frm1.sqlAdpter.Fill(frm1.dt, "Derslik");
            int col = frm1.dt.Tables["Derslik"].Columns.Count;
            for (int index = 0; index < col; index++)
                listBox1.Items.Add(frm1.dt.Tables["Derslik"].Columns[index].ToString());
            frm1.sqlAdpter.Dispose();
            frm1.baglanti.Close();
        }

Derslik formunun amacı veritabanına sütun ekleyip sütun silmek veya düzenlemek. Bu sorunu nasıl düzeltebilirim arkadaşlar.


Örnek vermek gerekirse;

İlk başta yüklenirken;
Derslik1
Derslik2
Derslik3
Derslik4
Derslik5

veriler listbox'a aktarıldığını kabul edelim. Ben Derslik5 silmek istiyorum. Seçip sil dediğim de Veri tabanında siliniyor ama listboxda Bir değişiklik olmuyor.
Velhasıl VS'de projeyi kapatıp açtığımda listbox'a veriler
Derslik1
Derslik2
Derslik3
Derslik4
silinmiş halde yani olması gerektiği gibi yükleniyor. :)
 

desperado64

Müdavim
Katılım
14 Ağustos 2008
Mesajlar
12,240
Reaksiyon puanı
104
Puanları
48
Flood olacak ama sorunu düzelttim.

Sil butonundaki;
frm1.dt.Clear();

kodunu
frm1.dt.Reset();

yaptım düzeldi :)
 
Üst