现在提示我  find_do.UpdateCommand(ds,"rs");错误,我想做datagrid的更新。SqlConnection conn = new SqlConnection(conn_str);
            SqlCommand cmd = new SqlCommand(sql_str,conn);
           
            SqlDataAdapter find_do = new SqlDataAdapter();
            SqlCommandBuilder updates = new SqlCommandBuilder(find_do);
            conn.Open();
            find_do.SelectCommand = cmd;
           
            
            DataSet ds = new DataSet();
            find_do.Fill(ds,"rs");
            dataGridView1.DataSource =ds.Tables["rs"];
                        dataGridView1.Columns[0].FillWeight = 50;
            dataGridView1.Columns[1].FillWeight = 50;
            dataGridView1.Columns[2].FillWeight = 50;
            dataGridView1.Columns[3].FillWeight = 260;
            dataGridView1.Columns[4].FillWeight = 70;
            dataGridView1.Columns[2].ReadOnly = true;
            dataGridView1.Columns[4].ReadOnly = true;            find_do.UpdateCommand(ds,"rs");
            conn.Close(); 

解决方案 »

  1.   

    也许我没说明白 我现在这个winform被关闭的时候,保存我在 datagridview中做的所有更新操作到我的数据库中 。
      

  2.   

    updateCommand中各Sql更新参数的顺序必须与页面输出数据的顺序一致.
      

  3.   

    错误 1 Non-invocable member 'System.Data.SqlClient.SqlDataAdapter.UpdateCommand' cannot be used like a method. C:\cj_sys\cj_sys\Form4.cs 50 21 cj_sys
      

  4.   

      find_do.UpdateCommand(ds,"rs");
      

  5.   

    UpdateCommand是一个属性
     find_do.Update(ds,"rs");
      

  6.   

     find_do.Update(ds,"rs");
     dataGridView1.Update();为什么没有写回数据库呢?