新學DataTable隔行變色
最近學習了下C#的控制項--DataTable,包括對DataTable的數據填充以及隔行變色,跟感興趣的朋友分享一下。
先來個簡單布局:
再來個按鈕點擊事件:
private void button1_Click(object sender, EventArgs e)
{
//創建一個DataTable對象
DataTable dt = new DataTable();
//創建DataColumn (列)
DataColumn dc1 = new DataColumn("學號");
DataColumn dc2 = new DataColumn("姓名");
DataColumn dc3 = new DataColumn("性別");
Advertisements
DataColumn dc4 = new DataColumn("年齡");
DataColumn dc5 = new DataColumn("班級");
//將以上datacolumn 添加進DataTable中
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
dt.Columns.Add(dc4);
dt.Columns.Add(dc5);
//準備需要填充的數據
List<Student> students = new List<Student>() {
new Student("10001","張三","男",15,"高二1班"),
Advertisements
new Student("10002","李四","男",16,"高二1班"),
new Student("10003","王二","男",15,"高二2班"),
new Student("10004","李芳","女",16,"高二2班"),
new Student("10005","王靜","女",14,"高二3班"),
new Student("10006","李婷","女",15,"高二3班")
};
DataRow dr = null;
//開始填充數據
foreach (Student stu in students)
{
dr = dt.NewRow();
dr["學號"] = stu.StuId;
dr["姓名"] = stu.Name;
dr["性別"] = stu.Sex;
dr["年齡"] = stu.Age;
dr["班級"] = stu.StuClass;
dt.Rows.Add(dr);
}
//datagridview綁定數據源
dataGridView1.DataSource = dt;
//檢查datagridview中數據 並隔行變色
if (dataGridView1.Rows.Count > 0)
{
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
if (i % 2 == 0)
{
dataGridView1.Rows[i].DefaultCellStyle.BackColor = Color.LightGray;
}
else
{
dataGridView1.Rows[i].DefaultCellStyle.BackColor = Color.LightCyan;
}
}
}
}
差點忘記啦,為了便於數據填充,還需要一個Student類啊,簡單的來一個
//學生類
public class Student
{
//學號
public String StuId { get; set; }
//姓名
public String Name { get; set; }
//性別
public String Sex { get; set; }
//年齡
public int Age { get; set; }
//班級
public String StuClass { get; set; }
public Student() { }
public Student(String id, String name, String sex, int age, String stuclass)
{
this.StuId = id;
this.Name = name;
this.Sex = sex;
this.Age = age;
this.StuClass = stuclass;
}
}
到這裡基本都已經完成啦,下面直接來看效果吧,直接點擊「查看數據」,就能看到效果啦
感興趣的朋友自己動手試試看吧,閱讀百遍不如自己動手來一遍!