TemplateField, GridView öğesinde, veriye bağlı bir denetimde özel içeriği görüntüleyen bir alanı ve görüntülenmeyen bir değeri depolamak için kullanılan HiddenField öğesini temsil etmesi amaçlanmıştır.
Görünmeyen bir değere sahip özel bir içerik sütunu oluşturuyorsunuz. Bu, Ön uç için temsil edilen görünüm olarak null olan bir sütun oluşturmaya neden oluyor. Eğer GridView seçilen endeks değişikliği değerini alıp istiyorsanız Öyleyse ardından yöntemleri kullanabilir:
Method1: Kullanım DataKey grideview size selecetedIndexchanged yönteminde istediğiniz DataColumn saklamak için: erişmek için
<asp:GridView ID="GridView1" autogeneratecolumns="false" runat="server"
OnSelectedIndexChanged="GridView1_SelectedIndexChanged"
autogenerateSelectButton="true" DataKeyNames="SongID">
<Columns>
<asp:BoundField datafield ="Song" headertext="Song"/>
<asp:BoundField datafield ="Album" headertext="Album"/>
<asp:BoundField datafield ="Artist" headertext="Artist"/>
<asp:BoundField datafield ="Genre" headertext="Genre"/>
<asp:BoundField datafield ="Price" headertext="Price"/>
<asp:BoundField datafield ="Explicit Lyrics" headertext="Explicit Lyrics"/>
</Columns>
</asp:GridView>
Selectedındexchanged Yöntem o tuşu:
int songId= Convert.ToInt32(GridView1.DataKeys[GridView1.SelectedIndex].Values);
Method2: bunun için değil özel bir kimse GRIDVIEW sahip herhangi bir sütun içinde HiddenField ekleyin. Eğer SongID yani kimliğini isterseniz hala metin ve şablonu alanını Başlık 'ın dispaly hiçbiri Column.Apply CSS HiddenField istiyorsanız
<asp:GridView ID="GridView1" autogeneratecolumns="false" runat="server"
OnSelectedIndexChanged="GridView1_SelectedIndexChanged"
autogenerateSelectButton="true">
<Columns>
<asp:BoundField datafield ="Song" headertext="Song"/>
<asp:BoundField datafield ="Album" headertext="Album"/>
<asp:BoundField datafield ="Artist" headertext="Artist"/>
<asp:BoundField datafield ="Genre" headertext="Genre"/>
<asp:BoundField datafield ="Price" headertext="Price"/>
<asp:TemplateField headertext="Explicit Lyrics" >
<ItemTemplate>
<asp:Lable runat="server" ID="lblexp" Text='<%# Eval("Explicit Lyrics")%>'>
<asp:HiddenField ID="HiddenField" runat="server" Value='<%# Eval("SongID")%>'/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
o zaman DatakeyName kullanabilirsiniz VEYA edebilirsiniz. –