asp.net – 向GridView Row添加ID

前端之家收集整理的这篇文章主要介绍了asp.net – 向GridView Row添加ID前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何向GridView行添加ID(应该呈现ID)?

我正在使用.NET(C#).我有GridView控件.

我有一些操作表行的javascript函数,但是必须为这些行设置ID:

<table>
    <tr id=1> ...  
    <tr id=2> ...  //id should come from database
..

我的GridView源自DataBase中的Data.重要的是不要有FAKE ROW IDS,而是真正来自DB的行ID(有一些ajax javascript函数可以根据这些ID和用户对表的操作来更新DB).

我的部分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中从DataBase for Rows呈现ID?

解决方法

试试以下….
protected void grdNews_RowDataBound(object sender,GridViewRowEventArgs e)
 {
      if (e.Row.RowType == DataControlRowType.DataRow)
      {
        GridViewRow row = e.Row;
        row.Attributes["id"] =grdNews.DataKeys[e.Row.RowIndex].Value.ToString();


      }
 }

猜你在找的asp.Net相关文章