我们在用Gridview,SPGridview进行数据展现和业务处理的时候,难免会需要增加“序号”的栏位,先介绍两种不同的实现方式:
当没有分页时:
1:当栏位是在.ASPX页面手动添加的时候,可使用如下方法:
代码
<
asp:TemplateField HeaderText
=
"
<nobr>序号</nobr>
"
>
< ItemTemplate >
< asp:Label runat = " server " ID = " lblNo " Text = ' <%# Container.DataItemIndex + 1 %> ' ></ asp:Label >
</ ItemTemplate >
</ asp:TemplateField >
< ItemTemplate >
< asp:Label runat = " server " ID = " lblNo " Text = ' <%# Container.DataItemIndex + 1 %> ' ></ asp:Label >
</ ItemTemplate >
</ asp:TemplateField >
2:当栏位是在后台.CS页面自己生成的栏位的时候,使用如下方法:
代码
//
添加自动生成的序号
protected void SPGridView1_RowDataBound( object sender, GridViewRowEventArgs e)
{
if (e.Row.RowIndex != - 1 )
{
int indexID = e.Row.RowIndex + 1 ;
e.Row.Cells[ 0 ].Text = indexID.ToString();
}
}
protected void SPGridView1_RowDataBound( object sender, GridViewRowEventArgs e)
{
if (e.Row.RowIndex != - 1 )
{
int indexID = e.Row.RowIndex + 1 ;
e.Row.Cells[ 0 ].Text = indexID.ToString();
}
}
当分页时候:
1: 当栏位是在.ASPX页面手动添加的时候,可使用如下方法:
代码
<
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 >
< 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 >
2:当栏位是在后台.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();
}
}
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();
}
}