我有一个BindingSource,用于绑定到网格。绑定源本身绑定到自定义类。例如
MyGrid.DataSource = MyBindingSource
'Bind the Binding source to data
For each classInstance as myClass in MyCollection
MyBindingSource.List.Add(classInstance)
Next
用户可以在此列表中添加或删除项目。我的目标是将此更新的列表保存到数据库中。我需要确定我的绑定源列表是否已更改(即已添加项目,或是否已从中删除项目)。
我知道我可以在我的自定义类上实现INotifyPropertyChanged,并利用OnPropertyChanged事件,但我的类的属性在我的情况下永远不会改变。我能想到的另一个解决方案是使用BindingSource的ListChanged事件,并在那里维护所有已添加和已删除行的集合。虽然这种方法对我有用,但我觉得它有点不稳定。
绑定源或集合(例如我的IList)是否提供了可以帮助我确定上述内容的任何其他属性?