3

これは私が達成しようとしているものです:

  1. 非データベース ソースからのデータを使用して設定された DataTable
  2. このテーブルは、BindingSource を使用して DataGridView にバインドされています
  3. DataGridView はユーザーによって更新されるため、一部のセルには新しい値が含まれるようになります。
  4. テーブルは datagridview にバインドされているため、その値が更新されます。

グリッド/データテーブルで更新された行 (編集された行) のみを取得するにはどうすればよいですか?

私が試してみました :

DataRow[] updatedRows = 
              _table.Select(null, null, DataViewRowState.ModifiedCurrent);

しかし、これは常に 0 行を返します。変更された行のみを取得する方法はありますか?

最悪の場合:

  • 元のテーブルのコピーを保持する
  • datagridview データソースから新しいテーブルを取得する
  • すべての行を比較します。

ありがとう!

4

1 に答える 1

2

これはどう:

DataTable changedRecordsTable = dataTable1.GetChanges();

詳細については、方法: 変更された行を取得するを参照してください。

于 2010-07-26T16:26:14.760 に答える