私は2つのインターフェースを持っています。それらの1つは「プレゼンター」クラス(MVPパターン)を表します。それはIPresenter
と呼ばれています。 もう1つのインタフェースは、具体的なPresenterクラスが返すことができるオブジェクトの1つを表します。それはIPresenterElement
と呼ばれています。 キャスティングリスト<Class>リストへ<Interface>
BindingList<People> SourceList { get { return peopleList; } }
コンパイラはエラーを発生させますが、次のように私は(IPresenterElement
をimplementd)People
クラスのオブジェクトを管理し、具体的なPresenter
クラスにそのプロパティを記述するときに、このIPresenter
インタフェースは、プロパティ
BindingList<IPresenterElement> SourceList { get; }
を宣言しかし、具体的なクラスがインタフェースプロパティを実装していないことを伝えます。言い換えれば、人々がIPresenterElement
であることに注意することはできません。
どのようにこの状況を克服できますか?
は、人々の実装クラス – frozen
マークを表示します角括弧は 'code'であり、それらは食べられません..! – TaW
C#は、インターフェイスおよびデリゲートのみをサポートしますが、クラスはサポートしません。したがって、 'BindingList'は 'People'と' IPresenterElement'の関係にかかわらず決して 'BindingList 'にはなりません。 –
PetSerAl