DataTable dt=ds.Tables[0];
for(int i=0;i<dt.Rows.Count;i++)
{
   if(......)//查找要删除的记录
      dt.Rows[i].Delete();
}
grid_bind();//删除后再次绑定

解决方案 »

  1.   

    这只是在DATASET中对数据进行了改变,但如何将DATASET中改变返回到数据库中?光绑定应该还不行吧
      

  2.   

    如果你要真正删除数据库的数据,可以直接对数据库数据进行删除,然后重新绑定就可以了。
    我上面说的是只在DataGrid里面看不到删除的数据,但是数据库里还是有的,也就是还没做到真正删除。
      

  3.   

    要删除数据库里的内容,最好用sql语句直接删除。
    在DA(DataSetAdapter)中设置deletecommand="delete from 数据表".
      

  4.   

    应该不会吧,我原来就做过直接在DATASET中删除,然后将结果返回到数据库中,但现在我忘了当时是怎么做的了(好象是要定义关键字),哎,不知哪位大侠能告诉我呀?非常感谢!
      

  5.   

    还是药用到sql的,用ds的update,实用sqladpadater对象。写updata的语句。
      

  6.   

    sheyanfen(星宇)说的没错,你要的效果不就是先在datagrid里删除,确定后再在数据库里删除嘛!你不会还记者vb6里的datagrid吧:)
      

  7.   

    string strSQL="SELECT TOP 1 * FROM " + TableName;
      SqlConnection myCn=new SqlConnection(strConn);
      myCn.Open();
      SqlDataAdapter sda = new SqlDataAdapter(strSQL,myCn);
      DataSet ds = new DataSet("ds");
      sda.Fill(ds,TableName);
      DataRow anyRow = ds.Tables[TableName].NewRow();  ds.Tables[TableName].Rows[intDelRowIndex].Delete();

      SqlCommandBuilder test=new SqlCommandBuilder(sda);
      sda.Update(ds,TableName);