0

我正在使用此代码为 GridView 的每一行提供唯一的 id

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
   GridViewRow row = e.Row;
   if (row.RowType == DataControlRowType.DataRow)
   {
      row.Attributes["id"] = cRowID.ToString();
      cRowID++;
   }   
}

其中cRowID是全局整数变量。
这段代码给了我 HTML 代码

<table id="gridview1">
 <tr id="1"><td>...</td></tr>
 <tr id="2"><td>...</td></tr>
  .
  .  
 <tr id="n"><td>...</td></tr>
</table>

如何用添加到同一行的特定列(比如 column1)值替换 cRowID?

在 HTML 中添加 tr 标签的 ID 后编辑
我希望它成为

<tr id="abc" ><td>abc</td><td>...</td></tr>
<tr id="pqr" ><td>pqr</td><td>...</td></tr>
<tr id="xyz" ><td>xyz</td><td>...</td></tr>

是否可以?如果是,请解释如何?

4

2 回答 2

5

测试试试这个

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
  {
     int counter=1;
     foreach (GridViewRow oItem in GridView1.Rows)
     { 
        counter++;
        oItem.Cells[0].Text = counter.ToString();
        oItem.Attributes.Add("id", "yourvalue");//here you can set row id ie(<tr>)
     }
   }

已编辑

foreach (GridViewRow oItem in GridView1.Rows)
     { 
        string getFirstColValue = oItem.Cells[0].Text;
        oItem.Attributes.Add("id", getFirstColvalue );
     }
于 2012-08-25T09:37:16.203 回答
0

你不需要经历一个循环。下面给出的代码工作正常:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        string getFirstColValue = e.Row.Cells[0].Text;
        e.Row.Attributes.Add("id", getFirstColvalue );            
    }
}
于 2014-01-31T07:00:05.600 回答