读书人

怎样动态显示datagridview的列。该怎么

发布时间: 2012-01-26 19:40:46 作者: rapoo

怎样动态显示datagridview的列。
各位前辈请教一个问题:
我想做一个录入学生成绩的系统。成绩表是这样的。表名:score 列名为:courseid(课程id),studentid(学号),examscore(考试成绩),lessontype(课程类型,必修选修,考察),semester(学期),classid(班级编号)。 我想做一个输入成绩的表,大概表示这样构成的。第一列是学号,2是学生名称,(前面这两列的值都要从数据库中搜索出来,值都是其他界面自动添加进去的。) 从第三列开始生成动态的列,根据课程类型分先后,(这个列名是要从courseid中筛选出符合本班的课程然后生成列。) 最后这个表是要实现先score表写入成绩数据。 主要内容就是这个。现在小弟主要是没有想法。望各位前辈不吝赐教。

[解决办法]

C# code
//生成TemplateField aa = new TemplateField();Label l1=new Label();l1.Text="dd";          aa.ItemTemplate.InstantiateIn(l1)将aa增加给GridViewthis.GridView1.Columns.Add(aa)
[解决办法]
C# code
--下面是转的 /**//// <summary>    /// 绑定生成GridView    /// </summary>    /// <param name="gdv">要绑定的GridView</param>    /// <param name="dtblDataSource">GridView的数据源</param>    /// <param name="strDataKey">GridView的DataKeyNames</param>    public static void GridViewBind(GridView gdv, DataTable dtblDataSource, string strDataKey)    ...{        gdv.Columns.Clear();        gdv.AutoGenerateColumns = false;        gdv.DataSource = dtblDataSource;        gdv.DataKeyNames = new string[] ...{ strDataKey };        for (int i = 0; i < dtblDataSource.Columns.Count; i++)   //绑定普通数据列        ...{            BoundField bfColumn = new BoundField();            bfColumn.DataField = dtblDataSource.Columns[i].ColumnName;            bfColumn.HeaderText = dtblDataSource.Columns[i].Caption;            gdv.Columns.Add(bfColumn);        }        gdv.Columns[1].Visible = false;        CommandField cfModify = new CommandField();  //绑定命令列        cfModify.ButtonType = ButtonType.Button;        cfModify.SelectText = "修改";        cfModify.ShowSelectButton = true;        gdv.Columns.Add(cfModify);        gdv.DataBind();    }
[解决办法]
探讨
C# code//生成

TemplateField aa = new TemplateField();
Label l1=new Label();
l1.Text="dd";
aa.ItemTemplate.InstantiateIn(l1)
将aa增加给GridView
this.GridView1.Columns.Add(aa)

读书人网 >C#

热点推荐