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();            
    }        
}

你可能感兴趣的:(GridView)