protected void gvwDepart_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            string departid = string.Empty;
            string departName = string.Empty;
            DepartmentManager DepartmentManager = new DepartmentManager();
            DataTable depart = DepartmentManager.GetAllList().Tables[0];            foreach (DataRow dr in depart.Rows)
            {
                if (dr["departmentid"].ToString().Trim().Equals((gvwDepart.Rows[e.RowIndex].Cells[0].Text.Trim())))
                {
                    departid = dr["departmentid"].ToString().Trim();
                    dr["txtdepartmentname"] = (gvwDepart.Rows[e.RowIndex].FindControl("departmentname") as TextBox).Text.Trim();
                    departName = dr["txtdepartmentname"].ToString().Trim();
                }
            }            departmentinfo info = new departmentinfo();
            Response.Write(e.RowIndex);
            info.departmentid = Convert.ToInt32(departid);
            info.departmentname = departName;            DepartmentManager.Update(info);
            gvwDepart.EditIndex = -1;
            BindDepart();
        }gvwDepart.Rows[e.RowIndex].Cells[0]取到的值为空,gvwDepart有数据

解决方案 »

  1.   

    gvwDepart是自动绑定的列吗?第一列是文字内容吗
      

  2.   

    protected void gv_RowEditing(object sender, GridViewEditEventArgs e)
      {
      this.gv.EditIndex = e.NewEditIndex;
      BindData();
      }  protected void gv_RowUpdating(object sender, GridViewUpdateEventArgs e)
      {
      this.gv.EditIndex = e.RowIndex;
      int id = int.Parse(this.gv.DataKeys[e.RowIndex].Value.ToString());
      //findcontrol 查找
      this.gv.EditIndex = -1;
      BindData();
      }
      

  3.   

    你先试试你可以取到gridview编辑行的值不?