【发布时间】:2011-01-13 01:17:46
【问题描述】:
我想在 Windows 窗体应用程序的 DataGridView 中显示人员列表。我希望我的服务层返回一个 Person 对象列表(例如,IList<Person>)。我希望列表中的更改反映在DataGridView 中,反之亦然。我的理解是使用BindingSource 有助于使用DataGridView。我的问题是双向数据绑定工作,我需要:
//pseudo code
BindingSource.DataSource = IBindingList<Person>
或者我可以这样做:
BindingSource.DataSource = IList<Person>
有什么区别?如果我对列表进行更改,DataGridView 是否会以任何方式更新?如果我必须使用BindingList,从我的服务层返回BindingList 似乎有点不稳定(因为创建了依赖项),有没有办法解决这个问题?
微软提到BindingList(在备注部分)
http://msdn.microsoft.com/en-us/library/ms132679.aspx:
“但是,典型的解决方案 程序员将使用一个类 提供数据绑定功能, 比如
BindingSource,而不是 直接使用BindingList<T>。”
【问题讨论】:
标签: c# winforms datagridview bindingsource bindinglist