asp.net Gridview, İstenilen Cell’in Değerini Almak

//asp.net Gridview, İstenilen Cell’in Değerini Almak

Bu yazımızda asp.net standart nesnelerinden olan gridview’in bir özelliğine değineceğim. Öncelikle yapacağımızı kısaca özetlemek istiyorum: Birden fazla kolon ve satır bulunan gridview de seçilen hücredeki değerin alınmasını göstereceğim.

Bu işlemi gridin _RowCommand olayında gerçekleştireceğiz. Bu yazıyı yazmadan önce ihtiyacımın olması sonucu araştırdığımda genellikle _PageIndexChanging olayında değerin yakalandığını anlatmışlar fakat benim ihtiyacım olan _RowCommand olayında seçilen hücredeki değeri yakalamak istediğim için kendi çözümümü bu olaya uyarladım.

Öncelikle belirtmek isterim ki bu yazacağım yöntemin dışında da cell’in değerini alma yöntemleri vardır. Kodu paylaşmadan önce işin mantığına değinmek istiyorum. Birinci adım olarak gridin CommandArgument’inden yararlanarak gridviewin ilgili seçilen satırın numarasını bulduk. Daha sonra sayfamızın .aspx tarafında ekli olan gridin TemplateField içinde bulunan label nesnesinde ki değeri findcontrol yardımı ile içindeki değeri aldık.

Herkesin bildiği bir bilgidir ama yinede hatırlatmak istedim. gridview de hücre veya kolon sıfır dan başlar. Kodlarımıız:

.aspx

<asp:TemplateField HeaderText="Firma Adı">
<ItemTemplate>
<asp:Label ID="lblFirmaAdi" Text='<%# Eval("FirmaAdi") %>' runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>

.aspx.cs

int rowIndex = Convert.ToInt32(e.CommandArgument); 
lblAdi.Text = ((Label)gridListe.Rows[rowIndex].FindControl("lblFirmaAdi")).Text

işlem bu kadar umarum faydalı bir yazı olmuştur. Sormak istediğiniz soru olur ise çekinmeden sorabilirsiniz. Selamlar

(Diğer bir yazımızda gridview in seçilen kolon değerini almayı anlatmıştık, ilgili yazımızı okumak için TIKLAYINIZ.)

Bir Yorum Gönderin

(E-Posta adresiniz bu sayfada yayınlanMAZ.)