1

我需要为 asp.net gridview 的每一行提供一个唯一的 rowID。默认行为是它不给<tr>生成的任何行。如何做到这一点?

    <tr id="UniqueID" class="orbox" style="color: rgb(51, 51, 51); background-color: AliceBlue; font-size: 11px; cursor: move;" align="center">
        <td></td>
    </tr>

编辑:见上面的代码,我要的是 HTML ID id="UniqueID"

4

2 回答 2

5

将代码放在public int cRowID = 0;页面类后面的代码上,然后放在您赢得使用此 ID 的 GridView 上,<%=cRowID++%>.

例如:

<asp:TemplateField HeaderText="ID">
    <ItemTemplate ><%=cRowID++%></ItemTemplate>
</asp:TemplateField>

要将 id 放在行上,您可以使用RowDataBound抓取行并添加为属性:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    GridViewRow row = e.Row;
    if (row.RowType == DataControlRowType.DataRow)
    {
        row.Attributes["id"] = cRowID.ToString();
        cRowID++;
    }   
}
于 2012-07-22T08:52:33.477 回答
0

如果您正在以编程方式创建 DataGridView,那么您可以将唯一值分配给 GridViewRow.Id http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridviewrow_properties

于 2012-07-22T08:54:14.617 回答