【IT168技术文档】
自动编号的用处很多,查看共有多少条数据,可以给你自动生成的Div,HTML控件进行命名,可以准确的操作这个控件,DataGrid、DataList、Repeater等绑定控件中都可以运用到,方便实用。
一、正序
C、.cs文件后台生成A、AllowPaging=False情况下 <asp:DataGrid id="DataGrid1" runat="server"> <Columns> <asp:TemplateColumn> <ItemTemplate> <%# Container.ItemIndex + 1%> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> 推荐方法: <asp:DataGrid id="DataGrid1" runat="server"> <Columns> <asp:TemplateColumn> <ItemTemplate> <%# this.DataGrid1.Items.Count + 1%> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> 从上面来看就是在ItemCreated事件中进行绑定所以得到的Items.Count刚好是当前的序号] B、AllowPaging="True"下 如果你DataGrid支持分页则可以如下 <asp:DataGrid id="DataGrid1" runat="server" AllowPaging="True"> <Columns> <asp:TemplateColumn> <ItemTemplate> <%# this.DataGrid1.CurrentPageIndex * this.DataGrid1.PageSize + Container.ItemIndex + 1%> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid>
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { //当项被数据绑定到 DataGrid 控件后,将引发 ItemDataBound 事件 if(e.Item.ItemIndex!=-1) { e.Item.Cells[0].Text=(this.DataGrid1.CurrentPageIndex*this.DataGrid1.PageSize+e.Item.ItemIndex+1).ToString(); } }