子クラス SampleTests を持つクラス Sample があります。プレゼンター クラスには、BindingList(Of Sample) プロパティ、CurrentSamples があります。プレゼンターには、バインディング リスト内の指定されたサンプルにテストを追加する AddTest メソッドもあります。
フォームには、プレゼンターの CurrentSamples プロパティにバインドされた SampleBindingSource があります。SampleBindingSource を DataSource として取り、その DataMember を SampleTest に設定する SampleTestBindingSource もあります。
AddTest メソッドを使用すると、テストが実際にそのサンプルに追加されることを確認しました。また、SampleBindingSource に追加されたテストがあることも確認しました。これは、bindingsource レコードをループ処理し、各レコードのテスト数をカウントすることによって行いました。ただし、2 つのテストがあるサンプルの SampleTestBindingSource にレコード数を表示すると、SampleTestBindingSource には 1 つのレコード/テストしか表示されません。
プレゼンターのバインディング リスト、SampleTestsBindingSource、および SampleBindingSource で ResetBindings を試しました。2 つのバインディングソースでも EndEdit を試しました。これらの試みのいずれも、SampleTests の変更を SampleTestsBindingSource に伝達しません。
プレゼンターの変更を取得して、SampleTestsBindingSource まで伝播するにはどうすればよいですか?