我认为这是一个简单的问题,但我在网上找不到任何信息.我正在使用BindingSource将ListBox绑定到List,如下所示:
List<Customer> customers = MyMethodReturningList(); BindingSource customersBindingSource = new BindingSource(); customersBindingSource.DataSource = customers; customersListBox.DataSource = customersBindingSource;
现在,当我在客户列表中添加或删除时,我的ListBox会更新(即使不在BindingSource上使用ResetBindings),但如果我更改列表中的任何客户对象,则不会.调用ResetBindings无效.我甚至实现了自己的BindingList,但行为没有改变.
Customer类使用属性来访问和修改数据.其ToString()内容显示在列表中.
我在.Net 2.0中使用C#.
有任何想法吗?
谢谢
解决方法
如果你使用BindingList,你甚至不需要BindingSource:
BindingList<Customer> customers = new BindingList<Customer>(MyMethodReturningList()); customersListBox.DataSource = customers;