網站首頁 編程語言 正文
如果需要集合中的元素何時刪除或添加的信息,可以使用ObservableCollection<T>類。這個類是為WPF定義的,這樣UI就可以得知集合的變化。這個類在程序集WindowsBase中定義,需要引用這個程序集。
ObservableCollection<T>類派生自Collection<T>基類,該基類可用于創建自定義集合,并在內部使用List<T>類。重寫基類的虛方法SetItem()和RemoveItem(),以觸發CollectionChanged事件。
static void Main()
{
var data = new ObservableCollection<string>();
data.CollectionChanged += Data_CollectionChanged;
data.Add("One");
data.Add("Two");
data.Insert(1, "Three");
data.Remove("One");
}
static void Data_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{
Console.WriteLine("action: {0}", e.Action.ToString());
if (e.OldItems != null)
{
Console.WriteLine("starting index for old item(s): {0}", e.OldStartingIndex);
Console.WriteLine("old item(s):");
foreach (var item in e.OldItems)
{
Console.WriteLine(item);
}
}
if (e.NewItems != null)
{
Console.WriteLine("starting index for new item(s): {0}", e.NewStartingIndex);
Console.WriteLine("new item(s): ");
foreach (var item in e.NewItems)
{
Console.WriteLine(item);
}
}
Console.WriteLine();
}
原文鏈接:https://www.cnblogs.com/afei-24/p/6835420.html
相關推薦
- 2022-01-15 let、var、const區別
- 2022-03-28 c語言for、while和do-while循環之間的區別_C 語言
- 2022-09-27 C#中對字符串進行壓縮和解壓的實現_C#教程
- 2021-12-05 Go語言配置數據庫連接池的實現_Golang
- 2024-07-15 linux系統管理高級命令(練習)(six day)
- 2022-09-16 Python封裝zabbix-get接口的代碼分享_python
- 2022-08-11 python?tkinter中的錨點(anchor)問題及處理_python
- 2022-10-21 C++可調用對象callable?object深入分析_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支