下面的代碼是設置GridView的DataKeyNames屬性。
<asp:GridView ID="GridView1" runat="server" DataKeyNames="ID" >
<asp:BoundField DataField="ID" Visible="false" />
</asp:GridView>
若是在.cs文件中的話,設置DataKeyNames必須在DataBind()之前。
GridView1.DataKeyNames = new string[] { "ID" };//設置數據源//GridView1.DataSource = new DataTable();GridView1.DataBind();
將某列的Visible屬性設置為false以后,如果直接使用下面這樣的代碼,獲取不到該列的值。
string s = GridView1.SelectedRow.Cells[0].Text;
據說是因為設置為false以后,GridView不對其進行數據綁定,有待查證。
那么,將該列設置為DataKeyNames的話,則可以通過下面這樣的代碼來獲取。
object o = GridView1.SelectedDataKey["ID"];
因為個人不喜歡在C#代碼里邊控制CSS,也不喜歡在Row事件綁定中去設置Cell的Visible屬性,所以選擇了此方法。
新聞熱點
疑難解答
圖片精選