- [C#] Di chuyển và thay đổi kích thước Control Winform khi ứng dụng đang chạy
- [VB.NET] Chia sẻ source tạo sắp xếp đội hình bóng đá Line-ups đội bóng
- [C#] Hướng dẫn chỉnh sửa Text của label trực tiếp trên winform
- [C#] Hướng dẫn custom TextBox giống Ultraviewer trên Winform
- [C#] Show Modal Winform like Bootstrap
- [DATABASE] Thứ tự thực hiện mệnh đề truy vấn SELECT trong Sqlserver
- [C#] Hướng dẫn viết addin Excel Lấy hình ảnh từ URL internet vào Excel
- [DATABASE] TSQL view max length all column data trên table Sqlserver
- [DEVEXPRESS] Hướng dẫn sử dụng MailMerge kèm Hình ảnh trên Winform
- [DATABASE] Hướng dẫn truy vấn xem kích thước lưu trữ của từng bảng ghi Table trên sqlserver
- [C#] Hướng dẫn Fake Date Time sử dụng thư viện Harmony
- [DATABASE] Phân biệt câu lệnh DDL và DML trong sqlserver
- [C#] Hướng dẫn convert file mã HTML sang file Pdf trên winform
- [DEVEXPRESS] Tạo các loại mã vạch Barcode trực tiếp trên Devexpress Barcode API
- [DEVEXPRESS] Hướng dẫn custom Simple button thành Progressbar
- [DATABASE] Tách số và chữ từ chuỗi - hàm tối ưu hóa tách số và chữ trong Sqlserver
- [C#] Tìm kiếm gần đúng Full Text Search sử dụng thư viện Lucene.NET
- [C#] Chia sẻ tài liệu, sdk và source code máy chấm công dòng máy ZKTeco
- [C#] Memory Cache là gì, và sử dụng trong ứng dụng Winform
- [DATABASE] Khóa chính Primary Key trong Sqlserver
[C#] Hướng dẫn sử dụng ObservableCollection trong lập trình Winform
Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách sử dụng ObservableCollection trong lập trình C# winform.
[C#] Hướng dẫn sử dụng ObservableCollection trong lập trình Winform
ObservableCollection C# là gì?
Nhưng với ObservableCollection<T> thì nó cung cấp thêm sự kiện thông báo nhi số lượng phần tử thay đổi, thêm, bớt ...(nghĩa là giám sát được biến động phần tử).
CollectionChanged
, trong tham số mà sự kiện gửi đến. e.Action
có cho biết hành động thay đổi trên tập hợp là gì (ví dụ: thêm NotifyCollectionChangedAction.Add, bớt NotifyCollectionChangedAction.Remove), clear tập hợp NotifyCollectionChangedAction.Reset ...
using System;
using System.Collections.ObjectModel;
using System.Collections.Specialized;
using System.Linq;
namespace ObservableCollection
{
class Program
{
static void Main(string[] args)
{
ObservableCollection<String> obs = new ObservableCollection<String>();
obs.CollectionChanged += Obs_CollectionChanged;
//Thay các phần tử tập hợp
obs.Add("Thao Meo");
obs.Add("Cai Tri Minh");
obs.Add("Vo Son Bang");
obs.Add("Hoang Thi Thao");
obs.Add("Nguyen Đinh Tuyen");
obs.Add("Trinh Quoc Khang");
obs.Add("Lap trinh VB.NET");
obs.RemoveAt(1);
obs.Clear();
Console.Read();
}
private static void Obs_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
{
switch (e.Action)
{
case NotifyCollectionChangedAction.Add:
foreach (String s in e.NewItems)
Console.WriteLine("Event Add Item: " + s);
break;
case NotifyCollectionChangedAction.Remove:
foreach (String s in e.OldItems)
Console.WriteLine("Event Remove item: " + s);
break;
case NotifyCollectionChangedAction.Replace:
Console.WriteLine("Event Replace");
break;
case NotifyCollectionChangedAction.Move:
Console.WriteLine("Event RemoveMove");
break;
case NotifyCollectionChangedAction.Reset:
Console.WriteLine("Event Reset");
break;
default:
break;
}
}
}
}
Thanks for watching!