欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

winform用datagridview制作课程表实例

程序员文章站 2023-12-13 22:26:10
本文实例讲述了winform用datagridview制作课程表的方法。分享给大家供大家参考。具体分析如下: 课程表的最终效果如下图所示: 具体方法如下: 1.首...

本文实例讲述了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节”

数据库的样式如下图所示:

winform用datagridview制作课程表实例

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#程序设计有所帮助。

上一篇:

下一篇: