既然是使用DATAGRID来修改数据,为什么不使用它本身提供的修改功能呢?在EditCommand, UpdateCommand的事件代码中处理就好了。有很多例子的。

解决方案 »

  1.   

    实际上你的代码在每次保存按钮按下时,都会执行page_load,这样你就清楚了为什么没有反应了。
    从你的代码看,你使要对数据表添加一条新的记录,然后按保存按钮把记录更新到数据库中,你可以这样做:
    把读取数据库的方法抽取出来封装为一个方法(如):protected void DataGridBind()
    {
    sql=new SqlConnection("uid=sa;pwd=sa;database=myweb");
    reader=new SqlDataAdapter("select * from lyzz",sql);
    set1=new DataSet();
    reader.Fill(set1);
      DataGrid1.DataSource=set1.Tables[0].DefaultView;
    DataGrid1.DataBind();
    }Page_Load中的代码:     if(!IsPostBack)
         {
             DataGridBind();
         }对数据更新的操作,你自己看这做吧,每次更新完了之后,调用DataGridBind()
      

  2.   

    niwalker() (  )
    我那样做后
    DATAGRID里有了一个空行,可以编辑
    那要如何取得这行的值呢
    先谢了
      

  3.   

    这个问题我也碰到过的,也是让我愁了好久,最后发现在关键就是在.NET自动生成的四个命令出的问题,就是SELECTCOMMAN,insertcommand,updatecommand和deletecommand上的,你可以用手工输入对进行修改,然后再设到DATAADAPTER上