語句沒有問題
大概是你的datagrid綁定是在page_load裡面做的,所以更改後的值丟了

解决方案 »

  1.   

    在page_load里是有dataBind,因为我要在页面显示时连接数据库显示数据啊,必须得绑定啊,
    现在怎么解决呢?
      

  2.   

    把他提出来写成一个方法,在page_load调用就可以了
      

  3.   

    你这个语句
    string strName = ((TextBox)e.Item.Cells[2].Controls[0]).Text;
    有问题
    e.Item.Cells[2].Controls[0]).Text 是不能被转化为TextBox控件的
      

  4.   

    niqiu322(孤寂的天蝎) 
    我就是写了一个方法在page_load里调用的
     perpheart(古井)不是把e.Item.Cells[2].Controls[0]).Text 转化为TextBox 而是把e.Item.Cells[2].Controls[0])转化为TextBox,应该没问题的,要不应该提示我吧
      

  5.   

    page_load里面有没有使用if(!this.IsPostBack)判断条件?
    如果没有,可以尝试一下.
      

  6.   

    ms-help://MS.VSCC/MS.MSDNVS.2052/cpref/html/frlrfSystemWebUIWebControlsEditCommandColumnClassTopic.htm
      

  7.   

    在page_load中
    绑定前加:
    if(!this.IsPostBack)
    {
       //绑定
    }
      

  8.   

    不行,不能加
    if(!this.IsPostBack)
    {
       //绑定
    }那样当页面postback时不绑定的话,数据就显示不出来了。
      

  9.   

    if(!IsPostBack)
    {
       //绑定
    }
    决能搞定,我已经试过N遍了
      

  10.   

    我通常是这样做的:把datagrid的绑定提出做一个公用方法.
    首先在page_load中if(!IsPostBack)里调用初始化页面,然后在每次改变了数据后再次调用绑定.在你这里,也就是要在datagrid_updatecommand事件改变数据后要再次调用!因为如果你不再次绑定,那么是没有变化的.而如果象junqilian(峻祁连)所说那样不用
    if(!IsPostBack),虽然里面有绑定的语句,但因为是初始化页面时用的,所以也看不到改变的!而且不用if(!IsPostBack)的话,你每次做的操作都要经过这里面的代码段,我们一般是不会这样做的.
      

  11.   

    在page_load中
    绑定前加:
    if(!this.IsPostBack)
    {
       //绑定
    }同时每次update后要再次绑定