私はこれを投稿しますが、それを解決するために数時間を費やした後、私はどこにも行きません。まず、WinFormsでのデータバインディングが最適ではないことを十分に認識しています。とはいえ、ほとんどのシナリオで機能します。
私のシナリオでは、フォームのマスターであるバインディングソースがあります。このバインディングソースに使用されるオブジェクトには、いくつかの単純なプロパティと、プロパティとして2つのバインディングリストがあります。このクラスとバインディングリストのクラスタイプの両方がINotifyPropertyChangedを実装します。私のフォームには、バインディングリストのプロパティの内容を表示するための2つのDataGridViewがあります。
これも、設計時にデータバインディングを介して行われます。それぞれに2つのバインディングソースがあり、メインのバインディングソースをデータソースとして使用し、次にそれぞれのバインディングリストプロパティをデータメンバーとして使用します。
これまでのところ、これはかなり標準的なものだと思います。
これらのリストの内容を更新するために、新しいアイテムを作成するフォームを表示するボタンがあり、BindingList.Add()を使用してリストに追加します。
コードでは、デバッグすると、アイテムはリストに含まれますが、グリッドは更新されません。しかし、リストバインディングソースの1つだけを使用するフォームにリストボックスを追加すると、両方のグリッドが期待どおりに更新を開始します。
不明な点がある場合はお詫び申し上げます。混乱を招く状況で、できる限り説明するように努めました。
非表示のリストボックスを使用する必要は本当にないので、どんな考えでも役に立ちます。