我是新手,希望大家多多照顾.我想在DATAGRID里动态添加行,就是说在datagrid里的模版列里放了一个CheckBox,我想选中这个CheckBox就添加一行,我用的是ASP.NET语言.希望大家力求细致!小第先谢过了.谢谢!

解决方案 »

  1.   


    设置CheckBox的是否回传属性为true用DataGrid的数据源DataTalbe(dt.NewRow())添加一行,再绑定给DataGrid就显示出新行了...
      

  2.   

    datarow dr=dt.newrow();
    dr[0]=...;
    dr[1]=...;
    ...
    dt.rows.add(dr);
    datagrid.datasource=dt;
    datagrid.databind();
      

  3.   

    同感,看来大家想到一起去了。
    DataTalbe(dt.NewRow());
    DataBind();
      

  4.   

    怎么没人回复。那么怎么捕捉模版列里的Checkbox的点击事件呢???
      

  5.   

    一、在.aspx的html视图下修改模版列的Checkbox属性,添加再个属性:
    AutoPostBack="True" 
    OnCheckedChanged="CheckBox1_CheckedChanged"
    代码如下:
    <asp:TemplateColumn>
      <ItemTemplate>
        <asp:CheckBox id=CheckBox1 runat="server" AutoPostBack="True" OnCheckedChanged="CheckBox1_CheckedChanged"></asp:CheckBox>
      </ItemTemplate>
    </asp:TemplateColumn>二、在.cs里添加事件响应函数:CheckBox1_CheckedChanged() //(函数名可以任意改)
    代码如下:
    protected void CheckBox1_CheckedChanged(object sender, System.EventArgs e)
    {
      //在这里给DataGrid1多加一行
      //至于怎么加一行,就要看你的DataGrid1所绑定的是什么数据源,如果是数组,就在绑定之前给这个数组多加一项;如果是数据表,则参考3楼SassyBoy的代码
    }
    注意:函数修饰符是“protected”或“public”