本文實例講述了winform用datagridview制作課程表的方法。分享給大家供大家參考。具體分析如下:
課程表的最終效果如下圖所示:
具體方法如下:
1.首先定義一個datatable,并添加列集,行集。 一張課程表的表結構就出來了。(如上圖表結構式4行8列)只有表有結構、有數據才可以綁到
datagridivew控件里。否則綁上了,也沒得顯示。
代碼如下:
DataTable dt = new DataTable("subject");
dt.Columns.Add("周數/節數", typeof(string)); //添加列集,下面都是
dt.Columns.Add("周一", typeof(string));
dt.Columns.Add("周二", typeof(string));
dt.Columns.Add("周三", typeof(string));
dt.Columns.Add("周四", typeof(string));
dt.Columns.Add("周五", typeof(string));
dt.Columns.Add("周六", typeof(string));
dt.Columns.Add("周日", typeof(string));
for (int i = 0; i < 4; i++) //用循環添加4個行集~
{
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
}
dt.Rows[0][0] = "第1節"; //向第一行里的第一個格中添加一個“第1節”
dt.Rows[1][0] = "第2節"; //向第二行里的第一個格中添加一個“第 2 節”
dt.Rows[2][0] = "第3節"; //向第三行里的第一個格中添加一個“第3節”
dt.Rows[3][0] = "第4節"; //向第四行里的第一個格中添加一個“第4節”
數據庫的樣式如下圖所示:
2. 做到上邊表的結構就有了。接下來該向表中添加數據了。 我用的方法是在循環里拼湊 sql 語句。 向每一行的每一個單元格中添加數據。
寫一個嵌套的循環就可以了。
代碼如下:
SqlCommand command = new SqlCommand(sql, conn);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
sum = reader.GetValue(0).ToString() + "/n" + reader.GetValue(1).ToString() + "/n" + reader.GetValue(2).ToString() + "/n" + reader.GetValue(3).ToString();
//如上圖,一個格子里頭有好幾個信息。比如教師,教室,課程名。這里把從數據庫中取出的數據拼在一起。放在變量SUM里。
dt.Rows[i][j] = sum; //把Sum 添加到datatable的小格子里。
}
conn.Close(); //關閉數據庫連接。
}
}
代碼如下:
希望本文所述對大家的C#程序設計有所幫助。
新聞熱點
疑難解答