GridView自动增加序号(三种实现方式)

  第一种方式,直接在Aspx页面GridView模板列中.这种的缺点是到第二页分页时又重新开始了.

  

复制代码 代码如下:

  <asp:TemplateField HeaderText="序号" InsertVisible="False">

  <ItemTemplate>

  <%#Container.DataItemIndex+1%>

  </ItemTemplate>

  </asp:TemplateField>

  第二种方式分页时进行了计算,这样会累计向下加.

  

复制代码 代码如下:

  <asp:TemplateField HeaderText="序号" InsertVisible="False">

  <ItemStyle HorizontalAlign="Center" />

  <HeaderStyle HorizontalAlign="Center"/>

  <ItemTemplate>

  <asp:Label ID="Label2" runat="server" Text='<%# this.GridView1.PageIndex * this.GridView1.PageSize + this.GridView1.Rows.Count + 1%>' />

  </ItemTemplate>

  </asp:TemplateField>

  还有一种方式放在cs代码中,和第二种相似.

  

复制代码 代码如下:

  <asp:BoundField HeaderText="序号" ></asp:BoundField>

  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

  {

  if (e.Row.RowIndex != -1)

  {

  int indexID = this.GridView1.PageIndex * this.myGridView.PageSize + e.Row.RowIndex + 1;

  e.Row.Cells[0].Text = indexID.ToString();

  }

  }