GridView控制項中加自動序號,有多種實現方法,你只需要根據的實用要求來確定。總的來分為後台寫法和前台寫法,後台寫法一般不考慮分頁的情況下使用,原理就是在GridView 綁定資料時,在RowDataBound 事件中來處理。
頁面的列為:
<asp:BoundField HeaderText="序號" />
或用
<asp:TemplateField HeaderText="序號"> <ItemTemplate> </ItemTemplate> </asp:TemplateField>
CS代碼為:
protected void GridView1_RowDataBond(object sender, GridViewRowEventArgs e){ if (e.Row.RowIndex >= 0) { e.Row.Cells[0].Text = Convert.ToString(e.Row.RowIndex + 1); } }
頁面直接實現比如直觀,知道Container.DataItemIndex 屬性的含義就行:
<asp:TemplateField HeaderText="序號"> <ItemTemplate> <%# Container.DataItemIndex + 1%> </ItemTemplate> </asp:TemplateField>
下面考慮的主要是分頁情況下的,在ASP.NET中分頁方法一般用GridView內建的分頁工具和AspNetPager的比較多。GridView內建的分頁寫法
<asp:TemplateField HeaderText="序號"> <ItemTemplate> <%# this.GridView1.PageIndex * this.GridView1.PageSize + GridView1.Rows.Count + 1%> </ItemTemplate> </asp:TemplateField>
AspNetPager分頁情況下的寫法為
<asp:TemplateField HeaderText="序號"> <ItemTemplate> <%# (this.Pager1.CurrentPageIndex - 1) * this.Pager1.PageSize + Container.DataItemIndex + 1%> </ItemTemplate> </asp:TemplateField>