[转载]在DataGrid中添加自动增长的序号列

有时候为了美观和直观经常需要这样自动编号的列
1.最简单的方法

<asp:TemplateColumn HeaderText="序号">
         
<ItemTemplate>
           
<%# grid.CurrentPageIndex*grid.PageSize+grid.Items.Count+1 %>
          
</ItemTemplate>
 
</asp:TemplateColumn>

2.另外的方法
无分页时

private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
            
{
                
if(e.Item.ItemIndex!=-1)
                
{
                    e.Item.Cells[
0].Text=(e.Item.ItemIndex+1).ToString();
                }

            }

有分页时

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)      
            
{
                
if(e.Item.ItemIndex!=-1)
                    
{
                        
int pagein=this.DataGrid1.CurrentPageIndex;
                        
int size=this.DataGrid1.PageSize;
                        
int sum=pagein*size;
                        e.Item.Cells[
0].Text=(sum+e.Item.ItemIndex+1).ToString();
                    }

            }


            
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
            
{
                
this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
                
this.datashow();
            }

posted @ 2007-04-15 14:30 jecray 阅读(148) 评论(0) 编辑 收藏