private void UpdateBind()
    {
        for (int i = 0; i < this.SearchListDg1.Items.Count; i++)
        {
            TextBox tbQty;            tbQty = (TextBox)SearchListDg1.Items[i].Cells[0].FindControl("currentInventory");
           
            
            if (tbQty.Text != null)
            {
                ......
            }
        }
    }textbox 是datagrid摸半列中的文本框,没有默认值,是手动添加然后判断textbox不为空就更新库,但是 tbQty.Text 的值取不到,好郁闷

解决方案 »

  1.   

    (TextBox)SearchListDg1.Items[i].Cells[0].FindControl("currentInventory").Text
    有值吗?怀疑你那地方就没值
      

  2.   

    datagrid的数据绑定需放在Page_Load的!IsPostBack里,否则回发后,你填的数据会丢失,因为数据又绑定了一次
      

  3.   

    datagrid的数据绑定需放在Page_Load的!IsPostBack里,否则回发后,你填的数据会丢失,因为数据又绑定了一次
    --------------------------------------------------------------------------------
    我改了,可还是不行
      

  4.   

    tbQty.Text != null  换成 tbQty.Text != String.Empty
    调试下程序,看TextBox有没有找到....
      

  5.   

    别的代码都没有错的话
    判断一下 
    if(SearchListDg1.Items[i] ==ListItemType.AlternatingItem || SearchListDg1.Items[i]== ListItemType.Item)
    {
      TextBox tbQty;            tbQty = (TextBox)SearchListDg1.Items[i].Cells[0].FindControl("currentInventory");
               
                
                if (tbQty.Text != null)
                {
                    ......
                }}