在datagrid中,要把http://www.greena.com.cn/wpublisher/webuser/ProductInfo.aspx?prodsortid=2 所示中的1改变为1,2,3,4,这种形式,也就是说每读出一行来就加1而无论数据怎样排序,到了下一页又接着上一页的最后一行加1,不知道怎么实现?不知大家明白了没有?

解决方案 »

  1.   

    在前台添加一个模板列,绑定ItemIndex+1就可以了
     <asp:TemplateColumn HeaderText="选择">
     <ItemTemplate>
     <%# Container.ItemIndex+1%>       
     </ItemTemplate>
     </asp:TemplateColumn>
      

  2.   

    在ItemDataBound事件里,显示e.Item.ItemIndex+1即可,如果有分页的话,再加上(PageIndex*PageSize)即可.
      

  3.   

    <asp:TemplateColumn HeaderText="选择">
     <ItemTemplate>
     <%# Container.ItemIndex+1%>       
     </ItemTemplate>
     </asp:TemplateColumn>
      

  4.   

    <%# DataGrid1.CurrentPageIndex * DataGrid1.PageSize + Container.ItemIndex + 1 %>
      

  5.   

    其实可以直接在sql语句中作文章,省很多麻烦
      

  6.   

    其实可以直接在sql语句中作文章,省很多麻烦
      

  7.   

    问题已经解决,给分
    其他方法也可以实现,但分页的时候还是1234,可能是我表述有问题,还是 ajieboy(齐) 的方法最适合我,特此感谢!我自己也想到了一种实现方式,说出来让大家参考一下
    后台代码:Dr.Columns.Add("RowNo");
    int rowNo=1;
    foreach (DataRow dr in Dr.Rows)
    {
    dr["RowNo"] = rowNo;
    rowNo++; }
    前台绑定rowNo就可以实现了
      

  8.   

    写各全局变量 intI =0
     然后在ItemDataBound  中intI++ ;
     这个方法很多  楼上的也很好 关键是要怎么用。。
      

  9.   

    是不是这个
    http://blog.csdn.net/zhzuo/archive/2004/09/10/100882.aspx