
No.2ベストアンサー
- 回答日時:
> それは「レコードの移動を検出して」ということなんでしょうか。
そうです。
dataTable_RowChangedイベントで行の移動が検知可能そうです。
自前で実装するとテキトーですが、以下のようになると思います。
private void button1_Click(object sender, EventArgs e)
{
// DBから取得したと仮定
var dt = new DataTable();
var c = new DataColumn("column1");
dt.Columns.Add(c);
c = new DataColumn("column2");
dt.Columns.Add(c);
var r = dt.NewRow();
r["column1"] = "1-1";
r["column2"] = "1-2";
dt.Rows.Add(r);
r = dt.NewRow();
r["column1"] = "2-1";
r["column2"] = "2-2";
dt.Rows.Add(r);
// DBに応じたTableAdapterと紐づけ
// BindingSourceと紐づけ
var bs = new BindingSource();
bs.DataSource = dt;
dataGridView1.DataSource = bs;
// 行変更イベントの設定
dt.RowChanged += dt_RowChanged;
}
void dt_RowChanged(object sender, DataRowChangeEventArgs e)
{
Console.WriteLine("行の値が変更された");
// ここでTableAdapterでUpdateを行う
}
また、そんなことせずとも、データソースを登録しておいて、データソースを画面上へ貼りつけることにより、ほぼ動作するスケルトンが出来上がります。
それに対して、RowChangedイベントでもデータ更新するような実装を加えてしまえば、ご希望の動作をするのではないでしょうか。
大分古い、かつVB.NETですが、以下記事が参考になると思います。
http://www.atmarkit.co.jp/fdotnet/vblab/vb2005m_ …
http://www.atmarkit.co.jp/fdotnet/vblab/vb2005m_ …
データベースエンジンの違いは関係ありません。
勝手に違いを吸収してテーブル更新を行ってくれます。
具体的なクエリの発行内容が分からないや、何やってるかわからないなどの理由で嫌う人もいますが、好き嫌いなど度外視して構わないほどあっさり動作してくれますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessにインポートしたら並び...
-
3つ以上のテーブルをUNIONする...
-
Access 削除クエリが重い
-
数百万件レコードのdelete
-
データの二重表示の原因
-
ACCESSのBookmarkプロパティの...
-
レコードロックする方法
-
Access VBA Me.Requery レコー...
-
非連結サブフォームのレコード...
-
Access 1レコードずつcsvで出力...
-
SQLデータ修正時に『このレコー...
-
SQLServerで同一条件レコードの...
-
PostgreSqlのテーブルをVBから更新
-
DB INSERT 時の排他制御について
-
(ACCESS)並び替えをしないで...
-
Accessの重複クエリで最小以外...
-
DB2のデーターベースに、ADOで...
-
ACCESSファイルを開こうとする...
-
無償版SQLサーバ 中国語(簡体...
-
ACCESS VBA コマンドDoCmd.Open...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
Accessにインポートしたら並び...
-
データの二重表示の原因
-
ACCESSのBookmarkプロパティの...
-
Access 削除クエリが重い
-
Access VBA Me.Requery レコー...
-
Access 1レコードずつcsvで出力...
-
2つの項目が重複するレコード...
-
数百万件レコードのdelete
-
SQLデータ修正時に『このレコー...
-
複数レコードをUPDATE文一文で...
-
SQLServerで同一条件レコードの...
-
Accessの重複クエリで最小以外...
-
Accessでレコードが更新された...
-
(ACCESS)並び替えをしないで...
-
テーブルのレコード削除ができ...
-
Accessで重複したデータを一件...
-
MySQL+PHP 特定レコードの更新...
-
曜日を格納する方法はどちらが...
-
ManagementStudioからのデータ削除
おすすめ情報
ありがとうございます。それは「レコードの移動を検出して」ということなんでしょうか。