前些天在孟子大哥那里学习了,在datagrid中更新、删除、插入,自己试着模仿去做都成功实现了这些功能。今天我打开这个程序试试,结果令人惊讶。
    更新不了数据了,真怪!东西一直在那里又没动过,难道程序还会活动、运动呐?!经测试,原来问题是这样。当在datagrid中按下“编辑”是,该行变为编辑状态,datagrid中各列的数据用textbox绑定,
例如:(按下 “编辑”时,)
   编号      性别    籍贯    现住处
   001        男     北京    上海
现在我把“上海”改为“深圳”,然后按下“更新”后,其结果还是“上海”,也是说数据根本就没变。在textbox中输入的内容没有任何影响,在textbox中输入和不输入内容都一样了。哎,感觉textbox 坏,,

解决方案 »

  1.   

    在你更新之前是不是又去给TextBox赋值了,你单步调试一下啊。
      

  2.   

    是不是EditCommand()事件“丢了”,有时会出现这个问题,特别是你文件放入到另一个工程中时哦会发生。
    重新给datagrid添加EditCommand()事件
      

  3.   

    同意  skytear() 你把Page_Load事件中的datagrid数据绑定代码放加上IsPostBack判断
    if(!this.IsPostBack){
         //放这里
    }注意EditCommand和UpdateCommand以及CancelCommand事件的最后要加上datagrid数据绑定代码
      

  4.   

    有错误提示吗?那可能就是没有得到TextBox上的值.你这样看能不能输出:response.write(CType(e.item.findcontrol("TextBoxID"),TextBox).Text)
      

  5.   

    response.write(CType(e.item.findcontrol("TextBoxI4"),TextBox).Text)
    这样显示原来该列的数据,如上面所说,显示结果是:“上海”IsPostBack不是这个原因 。
      

  6.   

    调试看看就知道了 跟不进去就事件掉了 要不就是IsPostBack
      

  7.   

    qb613ps3(孤星) ,哦?那怎么解决?难道也是让它自己好?(我的是它自己变成这样的,一直没改过什么的)