Thứ Hai, 5 tháng 8, 2013

Lọc dữ liệu trong DataGirdView bằng combobox

Ta tạo 1 class Student.cs:
public class Student
{
public string Name { get; set; }
public int Age { get; set; }
public string Address { get; set; }
public string Branch { get; set; }
}
Ta tạo 1 hàm trong Form1.cs hàm khởi tạo dữ liệu cho DataGirdView và Combobox như sau:



public Form1()
{
InitializeComponent();
CreateDataSource();
}
List studentList = new List () ;
Ta viết code cho hàm CreateDataSource():
void CreateDataSource()
{
//KHỏi tạo dữ liệu
Student std = new Student();

std.Name = "Phuong";
std.Branch = "IT";
std.Age = 24;
std.Address = "Ben Tre";

studentList.Add(std);
std = new Student();
std.Name = "Ngoc An";
std.Branch = "IT";
std.Age = 22;
std.Address = "Ben Tre";
studentList.Add(std);

std = new Student();
std.Name = "Thanh Tuyen";
std.Branch = "Ke Toan";
std.Age = 22;
std.Address = "Ben Tre";
studentList.Add(std);

std = new Student();
std.Name = "Quoc Nhan";
std.Branch = "Quan tri kinh doanh";
std.Age = 22;
std.Address = "Ben Tre";
studentList.Add(std);

std = new Student();
std.Name = "Minh Cuong";
std.Branch = "Kien Truc";
std.Age = 22;
std.Address = "Ben Tre";
studentList.Add(std);
//Gán dữ liệu cho DataGirdView
this.dataGridView1.DataSource = studentList;
//Gán ngành cho combobox
var item = studentList.Select(a => a.Branch);
comboBox1.Items.AddRange(item.ToArray());
}
Ta viết code trong sự kiện của Combobox:
if (comboBox1.SelectedItem != null)
{
string branch = comboBox1.Text;
var students = studentList.Where(a => a.Branch.Equals(branch));
dataGridView1.DataSource = students.ToList();
}
Ban đầu ta có như sau:
Kết quả ta lọc danh sách từ combobox:

Không có nhận xét nào:

Đăng nhận xét