一个方案,在DataTable中加一列,记录它的行号

解决方案 »

  1.   

    删除前记录该行数据对应Dateset中的行号然后再删除
      

  2.   

    你既然删除了,还要再获得行号干什么?删了之后再acceptchanges就不会受这个被删除行的影响了
      

  3.   

    不能直接找到行号,要在DataTable 里查找,注意DataTable本身有查找的方法
      

  4.   

    先谢过大家了。
    to xiays(一叶小舟):
    问题就是记录不下来啊,请赐教
    to  myhex(小乙) :
    在未进行acceptchanges之前是不会真正删除该行的,其实我是想记录下该行的行号,一旦我想取消删除,直接使用rows[行号].RejectChanges来操作。我不希望用DataTable.RejectChanges来取消,这样会取消我的所有操作
    to redlion963(狮子) :
    你是说find方法吗,还是select 方法,似乎不太好用。请给点例子
      

  5.   

    DataTable myTable;
       myTable = DataSet1.Tables["Orders"];
       // Presuming the DataTable has a column named Date.
       string strExpr;
       strExpr = "Date > '1/1/00'";
       DataRow[] foundRows;
       // Use the Select method to find all rows matching the filter.
       foundRows = myTable.Select(strExpr);
       // Print column 0 of each returned row.
       for(int i = 0; i < foundRows.Length; i ++){
          Console.WriteLine(foundRows[i][0]);
       }看看文档,很好用