DataGridViewWindows フォーム アプリで人の一覧を表示したいと考えています。サービス レイヤーが Person オブジェクトのリストを返すようにします (例: IList<Person>)。リストの変更を に反映させたい、DataGridViewまたはその逆を行いたい。私の理解では、 を使用すると でのBindingSource作業が容易になりDataGridViewます。私の質問は、双方向のデータバインディングが機能することです。必要ですか:
//pseudo code
BindingSource.DataSource = IBindingList<Person>
または私はすることができます:
BindingSource.DataSource = IList<Person>
違いは何ですか?リストに変更を加えた場合、DataGridViewどちらの方法でも更新されますか? を使用する必要がある場合、 (依存関係を作成するため)サービス層からBindingListを返すのは少し不安定に思えますが、それを回避する方法はありますか?BindingList
Microsoft はBindingList(備考セクションで)
http://msdn.microsoft.com/en-us/library/ms132679.aspxについて述べています。
BindingSource「しかし、典型的なソリューション プログラマーは、 を直接使用する代わりに、 などのデータ バインディング機能を提供するクラスを使用しBindingList<T>ます。」