这个不行,datagrid里的数据是从datasource里来的,不可能有很多行,然后其中一行全是checkbox,这个做不到的。要添加一行也只能在datasource(比如datatable)里先添加一行再绑定。datagrid的items属性,就没有add方法,可见它根本就不提供直接增加一样的功能,而且所有的行的内容都是一致的

解决方案 »

  1.   

    可以在footer区域添加模板列作为你的新增行
    或者操纵DataSet添加新行,这里用的控件和你在DataGrid里做修改保存时是一样的
      

  2.   

    可以增加一列模板列
    <asp:TemplateColumn FooterText="统计:">
    <HeaderStyle HorizontalAlign="Left" Width="50pt"></HeaderStyle>
    <HeaderTemplate>
    <asp:CheckBox ID="Checkbox1" Runat="server" />
    </HeaderTemplate>
    <ItemTemplate>
    <asp:CheckBox ID="chkExport" Runat="server" />
    </ItemTemplate>
    </asp:TemplateColumn>
    ////////////////////////////////
    增加一行可通过增加数据源来实现
    如:数据源为DataTable 时可以DataRow dr=datatable.NewRow();
    dr["列名"]=...;
    datatable.Rows.Add(dr);
    DataGrid.DataSourse=datatable;
    DataGrid.DataBind();
    //////////////////////
    又如:ArrayList al=New ArrayList();
          增加行如:al.Add("a");
                   al.Add("b");
    ..................
    DataGrid.DataSourse=al;
    DataGrid.DataBind();
      

  3.   


     DataGrid的 Item加 1
      

  4.   

    模板列,设一个CheckBox基本上就可以了。绑定的时候,绑CheckBox的Checked属性