「BaseSource」という名前Form
のパブリック プロパティを持つベースがあります。BindingSource
そのDataSource
プロパティは、ビジネス オブジェクト タイプに設定されます。
そこから派生フォームを作成すると、デザイナで「BaseSource」にアクセスでき、派生フォームのコントロールをビジネス オブジェクトのプロパティにバインドできると考えました。
BindingSource
デザイナーのコンポーネント トレイにドラッグされた他のオブジェクトと同じように、デザイナーが "BaseSource" インスタンスを参照できるようにするために、何か特別なことをしなければなりませんか?
アップデート:
以下のコメントに記載されているアイデアを試してみましたが (フィードバックに感謝します)、残念ながらうまくいきませんでした。Visual-studio-2013と 2 つのプロジェクトを使用しました。1 つは基本フォームとビジネス オブジェクト クラスを保持し、もう 1 つは派生フォームを保持します。基本フォームは、タイプ のBaseBindingSourceBindingSource
という名前の保護されたプロパティを公開します。ベース フォームのコンストラクターで、そのベース バインディング ソースのDataSource
プロパティを の新しいインスタンスに設定しますList<BusinessObject>
。プロジェクトは問題なくコンパイルされますが、派生フォームのデザイナーでは、使用可能なデータ ソースとしてBaseBindingSourceにアクセスできません。
このプロパティを公開しても役に立ちませんでした。