いくつかのフィールド、日付、文字列などを含むフォーム (実際にはコンパクト フレームワーク) があります。両方の TextBox コントロールが BindindSource のプロパティにバインドされています。
BindindSource には DataSource プロパティとして DataSet があり、DataMember は SQL CE データベース内のテーブルです。
新しい行を追加したいときは、bindingSource.AddNew() を呼び出してから bindingSource.MoveLast() を呼び出します。フォームには (DataSet で定義された) デフォルト値が表示され、すべてのフィールドを編集できます。
フォームを保存するには、bindingSource.EndEdit() を呼び出し、TableAdapter メソッドを使用して DataSet 行の値をデータベースに挿入します。日付はデータベースに登録されますが、文字列は登録されません。代わりに、テキスト ボックスに入力した値ではなく、文字列の既定値が保存されます。
EndEdit() を呼び出した後に DataSet テーブルの行のデータを調べると、日付フィールドはフォームのデータで更新されますが、文字列は更新されません。
奇妙なことに、(AddNew を呼び出さずに) 同じフォームで既存の行を編集すると、文字列フィールドが更新され、問題なく保持されます。したがって、これは BindingSource で AddNew() を呼び出した後にのみ発生します。私は何が欠けていますか?どこから探し始めるべきですか?
残念ながら、ここに投稿するにはコードが多すぎます。