自己写一个自增的模板列,加入datagrid

解决方案 »

  1.   

    string SqlStr="select * from yourtable";
    SqlDataAdapter CmdSqlStr=new SqlDataAdapter(SqlStr,conn.dbconn);
    DataSet ds=new DataSet();
    CmdSqlStr.Fill(ds,"selectinfo");
    ds.Tables[0].Columns.Add("infoNo");
    for (int i=0;i<ds.Tables[0].Rows.Count;i++)
    {
        ds.Tables[0].Rows[i]["infoNo"]=i+1;
    }
    在DataGrid中加入
    <Columns>
    <asp:BoundColumn DataField="infoNo" HeaderText="编号"></asp:BoundColumn>
    </Columns>
      

  2.   

    <asp:TemplateColumn>
    <ItemTemplate>
    <%# DataBinding.Eval(Container.ItemIndex + 1) %>
    </ItemTemplate>
    </asp:TemplateColumn>
      

  3.   

    <%# DataBinding.Eval(Container.ItemIndex + 1) %>
    编译器错误信息: BC32022: “Public Event DataBinding(sender As Object, e As System.EventArgs)”是事件,不能直接调用。请使用“RaiseEvent”语句引发事件。
    出现了这个错误
      

  4.   

    记错了,应该这样:
    <asp:TemplateColumn>
    <ItemTemplate>
    <%# Container.ItemIndex + 1 %>
    </ItemTemplate>
    </asp:TemplateColumn>