2013-04-14 69 views
0

我的班級有一個公共列表字段。我想檢測某人何時更改此收藏。但是,圍繞這個集合編寫我自己的添加/刪除包裝看起來很浪費。有沒有辦法通過代表或類似的東西來獲取有關集合變化的通知?獲取館藏更改的通知

回答

3

使用ObservableCollection<T>而不是 您可能會找到參考here

+0

「here」在哪裏? ;) – LightStriker

+0

編輯,對不起。 – David

+0

看來,這正是我正在尋找的。謝謝! –

0

使用BindingList<T>代替。它提供了一個ListChanged事件。在許多控件(如Listbox或Grid)中它也被接受爲DataSource

在本answerBindingList提到如果你想改變一個列表框,並更改該列表的列表反映到UI提供了比ObservableCollection

多了很多,你可以設置一個BindingList<>作爲數據源,以列表框,然後簡單地操作列表。列表框將處理ListChanged事件,並且將顯示更改,而無需由您自己手動完成。

如果您打算在Winforms中使用它,您應該使用BindingList,如果您打算在WPF應用程序上使用它,則使用ObservableCollection。

相關問題