我的班級有一個公共列表字段。我想檢測某人何時更改此收藏。但是,圍繞這個集合編寫我自己的添加/刪除包裝看起來很浪費。有沒有辦法通過代表或類似的東西來獲取有關集合變化的通知?獲取館藏更改的通知
0
A
回答
3
使用ObservableCollection<T>
而不是 您可能會找到參考here。
0
已經存在您描述的集合,它被稱爲ObservableCollection
。
它CollectionChanged
事件,所以只訂閱事件處理程序那裏,我就會叫出每一次項目添加或從集合中刪除..
0
使用BindingList<T>
代替。它提供了一個ListChanged
事件。在許多控件(如Listbox或Grid)中它也被接受爲DataSource
。
在本answer的BindingList
提到如果你想改變一個列表框,並更改該列表的列表反映到UI提供了比ObservableCollection
多了很多,你可以設置一個BindingList<>
作爲數據源,以列表框,然後簡單地操作列表。列表框將處理ListChanged
事件,並且將顯示更改,而無需由您自己手動完成。
如果您打算在Winforms中使用它,您應該使用BindingList,如果您打算在WPF應用程序上使用它,則使用ObservableCollection。
相關問題
- 1. GSEventRegisterEventCallBack - 獲取視圖更改通知
- 2. 當NSTableView.clickedRow更改時獲取通知?
- 3. 爲所有更改獲取MediaWiki通知
- 4. Couchdb獲取每個更改通知的更改文檔
- 5. 如何獲取網絡更改通知(連接,斷開,更改)
- 6. 隱藏/更改WooCommerce管理員通知
- 7. 如何獲取UISearchBar隱藏通知?
- 8. 獲取隱藏輸入的更改值
- 9. 通過FaxOut RingCentral API獲取傳真狀態更改通知
- 10. 通過D-Bus獲取剪貼板更改通知
- 11. 獲取WPF資源中已更改的DataContext的通知
- 12. 獲取有關Google日曆中的更改的通知
- 13. 404推送通知API的「更改未找到」消息並獲取更改API
- 14. 獲取有關硬盤扇區原始數據更改的通知 - 文件更改通知
- 15. 當選項卡聚焦MultiPageEditorPart中的更改時獲取通知
- 16. 獲取有關Android設備上WiFi狀態更改的通知?
- 17. 在Mac上獲取屏幕分辨率更改的通知
- 18. python:如何獲取mysql數據庫更改的通知?
- 19. 獲取有關iPhone更改通知的地址簿
- 20. 在Linux上獲取有關網絡接口更改的通知
- 21. 如何調試FindFirstChangeNotification獲取的文件更改通知?
- 22. 如何獲取用戶權限已更改的通知?
- 23. 獲取有關cgroup進程更改的通知?
- 24. 如何獲取有關綁定集合中更改的通知?
- 25. 使用Mailkit獲取有關收件箱更改的通知
- 26. 使用NSDistributedNotificationCenter獲取iTunes上的歌曲信息更改通知
- 27. 如何獲取有關數據庫列更改的通知
- 28. 獲取mongodb中已更改文檔的通知
- 29. Android - 每次更改通知時更改通知的變量
- 30. IBindingList更改通知
「here」在哪裏? ;) – LightStriker
編輯,對不起。 – David
看來,這正是我正在尋找的。謝謝! –