2011-03-02 40 views
0

我有一个类,其中一个属性是一个自定义类的列表。定制类型属性列表更改时会收到通知吗?

调用者获取列表并将类的实例添加到列表中。我如何知道该列表已更新?

Private _list as List(of MyType) 
Private _totalField1 as Integer 

Public Property MyTypeList As List(Of MyType) 
    Get 
     Return _list 
    End Get 
    Set(ByVal value As List(Of MyType)) 
     _list= value 
     _totalField1 = _list.Sum(Function(x) x.Field1) 
    End Set 
End Property 

我试图做的是每次的MyType对象添加到列表中保持运行总计字段1的时间,但添加到列表中不使用二传手。如何知道列表何时添加或更改?

回答

0

您可以使用BindingList类,而不是列表 当任何项目被更改/添加/删除时,BindingList会触发事件。

见例如:http://www.codeproject.com/KB/grid/BindingListExamples.aspx

+1

耶或基本上任何一种观察的集合将在我看来这样做。 – SRKX 2011-03-02 13:30:06

+0

这很好。谢谢您的帮助! – 2011-03-02 14:33:52

+0

我很高兴如果我帮你:) – 2011-03-02 15:39:02