? Bạn cần liên kết một đối tượng vào một điều kiểm cụ thể (có thể là để lưu trữ vài thông tin nào đó liên quan đến một item cho trước).
» Lưu trữ một tham chiếu đến đối tượng trong thuộc tính Tag của điều kiểm.
Mọi lớp dẫn xuất từ System.Windows.Forms.Control đều cung cấp thuộc tính Tag và bạn có thể sử dụng nó để lưu trữ một tham chiếu đến bất kỳ kiểu đối tượng nào. Thuộc tính Tag không được điều kiểm hay Microsoft .NET Framework sử dụng mà nó được để dành làm nơi lưu trữ các thông tin đặc thù của ứng dụng. Ngoài ra, một vài lớp khác không dẫn xuất từ Control cũng cung cấp thuộc tính Tag, chẳng hạn các lớp ListViewItem và TreeNode (trình bày các item trong một ListView hoặc TreeView). Một lớp không cung cấp thuộc tính Tag là MenuItem.
Thuộc tính Tag được định nghĩa là một kiểu Object, nghĩa là bạn có thể sử dụng nó để lưu trữ bất kỳ kiểu giá trị hoặc kiểu tham chiếu nào, từ một số hoặc chuỗi đơn giản cho đến một đối tượng tùy biến do bạn định nghĩa. Khi lấy dữ liệu từ thuộc tính Tag, bạn sẽ cần ép (kiểu) đối tượng thành kiểu gốc của nó.
Ví dụ sau đây thêm danh sách các file vào một ListView. Đối tượng FileInfo tương ứng với mỗi file được lưu trữ trong thuộc tính Tag. Khi người dùng nhắp đúp vào một trong các item, ứng dụng sẽ lấy đối tượng FileInfo từ thuộc tính Tag và hiển thị kích thước file trong một MessageBox .

Visual C# Code:
  1. using System;
  2. using System.Windows.Forms;
  3. using System.IO;
  4.  
  5. public class TagPropertyExample : System.Windows.Forms.Form (
  6.  
  7.     // (Bỏ qua phần mã designer.)
  8.  
  9.     private void TagPropertyExample_Load(object sender,
  10.       System.EventArgs e) {
  11.    
  12.         // Lấy tất cả các file trong thư mục gốc ổ đĩa C.
  13.         DirectoryInfo directory = new DirectoryInfo("C:\\");
  14.         FileInfo[] files = directory.GetFiles();
  15.  
  16.         // Hiển thị tất cả các file trong ListView.
  17.         foreach (FileInfo file in files) {
  18.        
  19.             ListViewItem item = listView.Items.Add(file.Name);
  20.             item.ImageIndex = 0;
  21.             item.Tag = file;
  22.         }
  23.     }
  24.  
  25.     private void listView_ItemActivate(object sender,
  26.       System.EventArgs e) {
  27.    
  28.         // Lấy kích thước file.
  29.         ListViewItem item = ((ListView)sender).SelectedItems[0];
  30.         FileInfo file = (FileInfo)item.Tag;
  31.         string info = file.FullName + " is " + file.Length + " bytes.";
  32.  
  33.         // Hiển thị kích thước file.
  34.         MessageBox.Show(info, "File Information");
  35.     }
  36. }


Trích từ "Các giải pháp lập trình C#"