你采用TmpStr=((TextBox) DataGridName.Item[i].FindControls["TextBoxname"])试试!

解决方案 »

  1.   

    我没太明白你的意思,如果要获得修改后的值,一般必须重新刷新页面,才能获得更新后的数据。还有对于模板列控件的TEXT的获得,不能用:TmpStr= e.Item.Cells[4].Text.ToString();
      

  2.   

    将PageLoad事件中的代码放在 if (!Page.IsPostBack){}
      

  3.   

    把你DataGrid编辑事件的代码拿来看看!
      

  4.   

    void DEDR_Update(object sender, DataGridCommandEventArgs e)
      {
         .......
         int row = Convert.ToInt32(e.Item.ItemIndex);
         TextBox EditText = null;     EditText = (TextBox)e.Item.FindControl("txtShortDesc");
         dataSet.Tables[0].Rows[row]["ShortDesc"] = EditText.Text;
         ......
      }
      

  5.   

    用e.Item.FindbyControl
    最后调用databind();
      

  6.   

    点编辑后你,你有一个确定和取消的,你在确定的事件,DataGrid_UpdateCommand(...)事件中,有下面代码:
    dim txt as textbox
    txt=e.item.cells(第i行).controls(0),textbox)
    txt.text'这个就是你所修改后的值,
    然后利用dataset来保存这个txt.text就可以了