Çoğu windows
projelerinde, veritabanındaki kayıtları listelemek için DataGridView kontrolünü
kullanırız. Bazı durumlarda listelenen kayıtları seçip silme, güncelleme gibi
işlemler yapmak isteyebiliriz. Bu durumda datagridview da listelenen kayıtlarda
seçtiğimiz satırdaki id gibi uniqe bir değeri alarak güncelleme,silme gibi
işlemlerimizi bu değere göre yapmamız gerekecektir.
Bir
örnek üzerinden seçtiğimiz satırdaki istenilen sütun değerini nasıl alacağımı
inceleyelim.
Örnek projemiz aşağıdaki gibi olsun. Örneğimize
göre seçili satırdaki id sütunundaki değeri
alalım.
.JPG)
İlk olarak datagridview imizin CurrentCellChanged eventine
aşağıdaki kodları yazalım.
|
private void
dataGridView1_CurrentCellChanged(object
sender, EventArgs e)
{
//1
Try //2
{
int
id = Convert.ToInt32
(dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells["id"].Value);//3
MessageBox.Show(id.ToString());
//4
}
catch
{
}
}
|
Şimdi yazdığımız kodlara açıklık getirelim.
//1 Biçoğumuzun
aklına neden CurrentCellChanged eventi ? diye
bir soru gelmiştir. CurrentCellChanged eventi datagridview a her tıkladığımızda
tekrar tekrar çalıştığı için kullanıyoruz. Aksine CellContentClick
eventini kullansaydık sadece ilk tıklamamızda çalışacaktı.
//2
CurrentCellChange eventi biz datagridview üzerinde seçim yapmasak bile bikaç
defa çalışır. Default olarak ilk satırı kendi seçecektir ve daha sonra seçili
bir satır olmadığı için yazdığımız kodda hata verecektir. Bunun önüne geçmek
için try-catch bloğu içerisine alıyoruz.
//3 Burada seçili satırdaki id sütununa karşılık gelen
değeri int türünde id adlı bir değişkene
atadık.
dataGridView1.CurrentRow.Index
:DataGridView da seçili satırın index numarasını verir.
//4 Gelen sonucu mesaj olarak gösterdik
Sonuç:

Umarım yararlı olmuştur.
İyi Çalışmalar…
Yazan : Salih DEMİROĞ