在c#中 RemoveAt、 Remove、delete用法區別

來源:互聯網
上載者:User

標籤:ring   count   需要   datarow   取消   remove   datatable   區別   復原   

有三種方法可以刪除 DataTable 中的 DataRow:
Delete 方法和 Remove 方法和 RemoveAt 方法

其區別是:

Delete 方法實際上不是從 DataTable 中刪除掉一行,而是將其標誌為刪除,僅僅是做個記號,
Remove 方法則是真正的從 DataRow 中刪除一行,
RemoveAt 方法是根據行的索引來刪除。

Delete 的使用是 : Datatable.Rows[i].Delete();

注意: Delete() 之後需要 datatable.AccepteChanges() 方法確認完全刪除,因為 Delete() 只是將其標誌為刪除,可以用 datatable.RejectChanges() 復原,使該行取消刪除。

Remove 的使用是: Datatable.Rows.Remove(datatable.Rows[i]);

RemoveAt 的使用是: DataTable.Rows.RemoveAt(index);

如果用 RemoveAt 方法刪除的時候,如果是迴圈要注意要從後往前刪,也就是 i--,例如:

for (int i = 0; i < dgv_datalist.Rows.Count; i--)
{ //刪除 “運單編號”==item.運單編號 的行
dgv_datalist.Rows[i].Cells["運單編號"].Value.ToString().Equals(item.運單編號);
dgv_datalist.Rows.RemoveAt(i);
}

在c#中 RemoveAt、 Remove、delete用法區別

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.