- [DATABASE] Hướng dẫn thêm và cập nhật Extended Property Column trong Table Sqlserver
- [DEVEXPRESS] Hướng dẫn sử dụng Vertical Gridview để hiển thị thông tin sản phẩm
- [C#] Hướng dẫn sử dụng Json Schema để Validate chuỗi string có phải json
- [C#] Hướng dẫn sử dụng công cụ Clean Code trên Visual Studio
- [C#] Hướng dẫn Drag and Drop File vào RichTextBox
- [C#] Hướng dẫn tạo hiệu ứng Karaoke Text Effect Winform
- [C#] Sử dụng thư viện ZedGraph vẽ biểu đồ Line, Bar, Pie trên Winform
- [DATABASE] Hướng dẫn sort sắp xếp địa chỉ IP trên sqlserver sử dụng hàm PARSENAME
- [C#] Theo dõi sử kiện process Start hay Stop trên Winform
- [ASP.NET] Chia sẻ source code chụp hình sử dụng camera trên website
- [C#] Chạy ứng dụng trên Virtual Desktop (màn hình ảo) Winform
- [C#] Mã hóa và giải mã Data Protection API trên winform
- [C#] Hướng dẫn tạo Gradient Background trên Winform
- [DATABASE] Hướng dẫn convert Epoch to DateTime trong sqlserver
- [DATABASE] Hướng dẫn sử dụng STRING_AGG và CONCAT_WS trong sqlserver 2017
- [C#] Hướng dẫn Copy With All Property in Class Object
- [DEVEXPRESS] Hướng dẫn load Json DataSource vào GridView
- [C#] Hướng dẫn tạo chữ ký trên winform Signature Pad
- [DEVEXPRESS] Format code T-SQL highlight in RichEditControl
- [C#] Hướng dẫn upload file, hình ảnh từ Winform lên server API ASP.NET Core
[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!