• ベストアンサー

LINQ 最後に新規入力したデータを保存したい

http://msdn2.microsoft.com/ja-jp/library/bb531271.aspx ここの「変更の保存」を参考にしました。 このままだと、最後に新規入力したデータを確定するために、一度レコードを移動しないと、データが消去されてしまいます・・・。 MoveNext等をSubmitChangesの前に入れたりしましたが、やはり消去されてしまいます。 何か対処法を教えて頂けないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • taku2888
  • ベストアンサー率60% (15/25)
回答No.2

C# DataGridViewでは、これで問題ないですが。 実装の詳細が不明なのでなんともですが、 http://www.microsoft.com/japan/msdn/community/gdn/ShowPost-42091.htm ↑とかは参考になりませんか。 RR.Endedit の前に Me.Validate でと言うことらしいです。 BindingNavigator をユーザーに使わせる訳にはいかないので、 あまり使ったことがないので申し訳ないです。

chusuke_t
質問者

お礼

BindingNavigator.Validate(); BindingSource.EndEdit(); DataContext.SubmitChanges(); でできました! ありがとうございます。

その他の回答 (1)

  • taku2888
  • ベストアンサー率60% (15/25)
回答No.1

参考ページにもあるよに > Tab キーを押して変更をコミットします。 と、Tab キーを押したりして別行に移動しなと更新は反映されません。 で、BindingNavigatorとかのValidateとかで、 現在の更新内容をデータソースに反映させて、 SubmitChangesを行うと現在の内容が登録されます。 table1BindingNavigator.Validate(); DataContext1.SubmitChanges(); C#なので、同様のものを探してみては。

chusuke_t
質問者

補足

MoveNextを使ったときと同様、やはり消去されてしまいます。

関連するQ&A