トップ回答者
DefaultValuesNeededで複数レコードを追加する場合

質問
-
度々、お世話になっております。
datagridviewでDBのデータを追加する際の質問です。
private void dataGridViewUsers_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs e) { da.SelectCommand = new NpgsqlCommand ( "select" + " id" + " from" + " users", m_conn ); da.Fill(Cntds, "users"); if (0 != Cntds.Tables["users"].Rows.Count) { e.Row.Cells["id"].Value = Cntds.Tables["users"].Rows.Count + 1; } }
[id]カラムの規定値にレコードの総数+1を設定しているわけですが
この方法だと、新規レコードが1レコードの場合は難なく追加させることができるのですが
複数のレコードとなると[id]に同じ値がセットされてしまいます。
このような場合うまく追加できる方法をご指導ください。
回答
-
idが連番であればよいという前提での回答です。
以下で連番を振ってくれます。private void dataGridView1_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs e) { dataGridView1.Rows[e.Row.Index].Cells["id"].Value = e.Row.Index + 1; }
Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/- 回答としてマーク oira3ryu 2010年12月12日 22:23
すべての返信
-
idが連番であればよいという前提での回答です。
以下で連番を振ってくれます。private void dataGridView1_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs e) { dataGridView1.Rows[e.Row.Index].Cells["id"].Value = e.Row.Index + 1; }
Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/- 回答としてマーク oira3ryu 2010年12月12日 22:23