|
分類:[C#]
OS :WindowsXP 開発環境:VisualStudio2008 Pro 開発言語:C# 3.0
AccessデータベースをOLEで接続し、 データバインドしたDataGridViewでデータを表形式で表示しつつ、 DataGridViewの右横にデータバインドしたテキストボックスを配置し、 DataGridViewでデータを選択し、それをテキストボックスで データ更新が出来る名簿ソフトを作成しています。
それに、DataViewのRowFilterでDataGridViewでのデータの絞込みが出来る 用に機能追加し、またデータバインドのソースをDataViewにして、絞込みした 状態でデータ更新ができるようにしようとしました。
しかし、 RowFilterでフィルタをかけている状態で、下記のコマンドをボタンで更新処理を 実行しようとすると、DataGridのフォーカスを手動で変更をしないとデータベースが 更新されないのです。
フォーカスを移動しなくても更新されるようにEndCurrentEdit メソッドを事前にかけているのですが、何かコマンドが足りないのでしょうか? 恐れ入りますが、ご教示いただけないでしょうか?
以下コマンド----------------- int iRow; //更新したレコード数 this.BindingContext[dbCustomer1, "M_Customer"].EndCurrentEdit(); iRow = oleDbDataAdapter1.Update(dbCustomer1, "M_Customer"); MessageBox.Show("更新 " + iRow + "件"); -----------------------------
|