用c#语言做课程表系统代码,winform用datagridview制作课程表实例
本文實例講述了winform用datagridview制作課程表的方法。分享給大家供大家參考。具體分析如下:
課程表的最終效果如下圖所示:
具體方法如下:
1.首先定義一個datatable,并添加列集,行集。 一張課程表的表結構就出來了。(如上圖表結構式4行8列)只有表有結構、有數據才可以綁到
datagridivew控件里。否則綁上了,也沒得顯示。
代碼如下:
int num , week ;?? // 周數節數,第二步的時候用得到。
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 語句。 向每一行的每一個單元格中添加數據。
寫一個嵌套的循環就可以了。
代碼如下:
for (int i = 0; i < 4; i++)//一共有四行,在課程表里i應該表示的是節數。
{
for (int j = 1; j < 8; j++)//每行有7列需要添加數據,在課程表中,J 表示的應該是周數。
{
num = i + 1;
week = j;
string sql = "select subject ,teacher,room,weekstar_end from subject_table where num='" + num.ToString() + "' and week = '" +? week.ToString() + "'";? //拼湊SQL語句。
SqlConnection conn = new SqlConnection ("連接字符串~~");
conn.Open();
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();? //關閉數據庫連接。
}
}
3.最后一步,把整好的datatable添加到datagridview里。萬事大吉了。
代碼如下:
this.DataGridView.DataSource = dt;?? //好了。
希望本文所述對大家的C#程序設計有所幫助。
總結
以上是生活随笔為你收集整理的用c#语言做课程表系统代码,winform用datagridview制作课程表实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring IOC(Inversion
- 下一篇: 16.火星文转换 C#