IList<Customer>
リストをBindingList<Customer>
にキャストするにはどうすればよいですか?
var yourList = new List<Customer>();
var listBinding = new BindingList<Customer>(yourList);
キャストする必要はなく、BindingList<T>
クラスコンストラクターにIList<T>
を提供するだけです。
残念ながら、IListをそうでないものにキャストすることはできません。ただし、IListをコンストラクターに渡すだけで、新しいBindingListを簡単に作成できます。
BindingList<Customer> bindingList = new BindingList<Customer>(yourIList);
BindingList
コンストラクターはIList
パラメーターを受け取り、それを使用します。
var binding = new BindingList<Customer>(list); //where list is type of IList<Customer>
IList<Customer> list = new List<Customer>();
var bindingList = new BindingList<Customer>(list);
追加情報: IBindingList
はIList
から継承します:したがって、IBindingList
はすべてのプロパティと関数シグネチャをIList
と共有します。したがって、IList
実装はIBindingList
実装に容易に「適合」できます。