[C#] DataTableの行を削除する

MSDNにあるとおり、Delete メソッドを使用する。
// dtはDataTable
dt.Rows[0].Delete();
で、これでOKかと思いきや、これだけでは単に「delete」というマークをつけたに過ぎない。実際の行を削除するわけではない。
で、これをコミットするにはDataTable.AcceptChanges メソッドを使用する。
dt.AcceptChanges();
このメソッドによりマークをつけた行を削除することができるはず。
なお、DataRowCollection.Remove メソッドを使用すればいきなり削除できる。
が、こちらはRemove()に削除対象のDataRowを引数として渡すので、
// iは添字
dt.Rows.Remove(dt.Rows[i]);
こういう感じになる。
削除マークをつけて値をチェックする必要がない場合はRemove() が一般的なのかもしれない。

このブログの人気の投稿

Excel で入力した文字に勝手に取り消し線が入る

コピーした行の挿入が表示されない時はフィルタされていないかチェック