create TextBox in those columns in ItemDataBound event handler

解决方案 »

  1.   

    如果采用TextBox,绑定数据比较麻烦,有没有其他的方法。
      

  2.   

    不用TextBox,那你怎么修改??不是绑定,是直接生成TextBox,然后在其中赋与你动态的值
      

  3.   

    如何ItemDataBound直接生成TextBox,请用代码说明一下,多谢!
      

  4.   

    <asp:DataGrid id="DataGrid1" runat="server" OnItemDataBound="DataGrid1_OnItemDataBound"/>....
    void DataGrid1_OnItemDataBound(Object sender, DataGridItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType ==
    ListItemType.AlternatingItem)
        {
    TableCell cell = new TableCell();
             TextBox tb = new TextBox();
             tb.ID = "whatever";
             tb.Text = "whatever";
         cell.Controls.Add(tb);
    e.Item.Cells.Add(cell);
        }
    }
      

  5.   

    我的代码如下:
    private void dgQryResult_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
    for(int i=begin;i<=end;i++)
    {
    TableCell cell = new TableCell();
    TextBox tbAmt = new TextBox();
    tbAmt.ID = "tbAmt"+i.ToString();
    tbAmt.Text = e.Item.Cells[i].Text;
    cell.Controls.Add(tbAmt);
    e.Item.Cells.Add(cell);
    }
    }
    }
    其中Begin和End只是控制列。
      

  6.   

    现在列可以显示出来(我加入LABEL),但是绑定两次如何解决?