如何为GridView行添加ID(ID应该被渲染)?
我正在使用.NET(C#)。我有GridView控件。
我有一些JavaScript函数,它们正在操作表格行,但必须为这些行分配ID:
<table>
<tr id=1> ...
<tr id=2> ... //id should come from database
..
我的GridView是从数据库中获取的数据生成的。重要的是不要有虚假的行ID,而是真正来自于数据库的行ID(有一些ajax JavaScript函数根据这些ID和用户对表格的操作更新数据库)。
我的GridView的一部分如下:
<asp:GridView ID="grdNews" runat="server" BorderStyle="None" RowStyle-BorderStyle="None"
GridLines="None" CssClass="table" Style="white-space: nowrap" AutoGenerateColumns="False"
DataKeyNames="ID" AllowSorting="True" AllowPaging="true" OnSorting="grdNews_Sorting" OnRowDataBound="grdNews_RowDataBound">
<RowStyle BorderStyle="None" />
<HeaderStyle CssClass="nodrag" />
<Columns>
....
我已经尝试了以下方法:
protected void grdNews_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.ID = grdNews.DataKeys[e.Row.RowIndex].Value.ToString();
}
}
这样做可以给e.Row.ID赋予正确的值,但是这不会呈现出该ID。
那么如何为GridView中的行呈现来自数据库的ID呢?