请教DataGrid问题 本人想实现这样一个功能:在一个页面上显示用户的成绩,分别取这样几个数据:所在部门,姓名,分数。想在每个页面显示2列(显示1列可以用datagrid实现)。不知该如何操作? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 显示2列的有很多的方法,可以自己写分页也可以把dataset中的数据生成一行有2列的datatable再绑定到datagrid 显示两列的操作一样呀!方法一:自动绑定string sql = "select deptName as 所在部门 ,username as 姓名, scope as 分数 from Table "this.dataGrid.DataSource = ds;方法二:手动添加。 这个方法以在窗体设计器中用“属性生成器”来添加列 用列样式columnstyle#region 角色信息Datagrid样式private void dgColumnStyle_Role(bool editFlag){//声明DataGridTableStyleDataGridTableStyle myTableStyle = new DataGridTableStyle( );myTableStyle.MappingName = "XT_QX_JS_TB";//声明DataGridColumnStyle1DataGridTextBoxColumn ColumnStyle1 = new DataGridTextBoxColumn();ColumnStyle1.MappingName = "QX_JS_BM";ColumnStyle1.HeaderText = "编号";ColumnStyle1.Width = 0;ColumnStyle1.ReadOnly = true;ColumnStyle1.Format= "yyyy年MM月dd日";//这列如果是日期类型可以用指定日期格式显示日期值。myTableStyle.GridColumnStyles.Add(ColumnStyle1);//声明DataGridColumnStyle2DataGridTextBoxColumn ColumnStyle2 = new DataGridTextBoxColumn();ColumnStyle2.MappingName = "QX_JS_MC";ColumnStyle2.HeaderText = "名称";ColumnStyle2.Width = 120;ColumnStyle2.NullText="";myTableStyle.GridColumnStyles.Add(ColumnStyle2);//声明DataGridColumnStyle3DataGridTextBoxColumn ColumnStyle3 = new DataGridTextBoxColumn();ColumnStyle3.MappingName = "QX_JS_MS";ColumnStyle3.HeaderText = "描述";ColumnStyle3.Width = 120;ColumnStyle3.NullText="";myTableStyle.GridColumnStyles.Add(ColumnStyle3);//声明DataGridColumnStyle5DataGridBoolColumn ColumnStyle5 = new DataGridBoolColumn();ColumnStyle5.MappingName = "QX_JS_SFYX";ColumnStyle5.HeaderText = "有效";ColumnStyle5.AllowNull = false;ColumnStyle5.TrueValue = (Decimal)1;ColumnStyle5.FalseValue = (Decimal)0;ColumnStyle5.Width = 40;myTableStyle.GridColumnStyles.Add(ColumnStyle5);//声明DataGridColumnStyle4DataGridTextBoxColumn ColumnStyle4 = new DataGridTextBoxColumn();ColumnStyle4.MappingName = "QX_JS_XSSX";ColumnStyle4.HeaderText = "顺序";ColumnStyle4.Width = 40;myTableStyle.GridColumnStyles.Add(ColumnStyle4);dataGridMain.TableStyles.Clear();dataGridMain.TableStyles.Add( myTableStyle );}#endregion为绑定该数据库的datagrid指定dataGridTableStyle(点击TableStyles属性右边的按纽),设置dataGridTableStyle的MappingName为你的表名,然后再添加GridCloumnStyle(也是点击GridCloumnStyles右边的按纽)设置GridCloumnStyle为表中的列名,想要哪个显示就添加哪个,不要显示就不添加即可!MappingName一定要指定,不然没有效果! http://www.cnblogs.com/lovecherry/archive/2005/04/28/146749.html 我一般是用datalist做这个效果! datalist简单易用,要不就把dataset中的数据生成一行有2列的datatable再绑定到datagrid 水晶报表运行时无法在服务器安装 如何让gidiview内容在网页上显示出来 一个关于img属性的问题 下拉列表绑定数据库问题. 动态取控件名称的问题 鲁迅先生 《呐喊》 新篇 真的不懂了。datalist嵌套问题。一个datalist就没问题。两个嵌套了就出问题。仅有的50分都给你们了。不过一定要帮我 用户控件可以动态显示嘛? 求把sql转为存储过程的方法! 如何传值到button1_Click中 数据导出到excel表的问题。 谁用过FreeTextBox控件,有个小问题,插入图片为什么插入不了,散分
,可以自己写分页
也可以把dataset中的数据生成一行有2列的datatable再绑定到datagrid
string sql = "select deptName as 所在部门 ,username as 姓名, scope as 分数 from Table "
this.dataGrid.DataSource = ds;
方法二:手动添加。
这个方法以在窗体设计器中用“属性生成器”来添加列
private void dgColumnStyle_Role(bool editFlag)
{
//声明DataGridTableStyle
DataGridTableStyle myTableStyle = new DataGridTableStyle( );
myTableStyle.MappingName = "XT_QX_JS_TB";//声明DataGridColumnStyle1
DataGridTextBoxColumn ColumnStyle1 = new DataGridTextBoxColumn();
ColumnStyle1.MappingName = "QX_JS_BM";
ColumnStyle1.HeaderText = "编号";
ColumnStyle1.Width = 0;
ColumnStyle1.ReadOnly = true;
ColumnStyle1.Format= "yyyy年MM月dd日";//这列如果是日期类型可以用指定日期格式显示日期值。
myTableStyle.GridColumnStyles.Add(ColumnStyle1);//声明DataGridColumnStyle2
DataGridTextBoxColumn ColumnStyle2 = new DataGridTextBoxColumn();
ColumnStyle2.MappingName = "QX_JS_MC";
ColumnStyle2.HeaderText = "名称";
ColumnStyle2.Width = 120;
ColumnStyle2.NullText="";
myTableStyle.GridColumnStyles.Add(ColumnStyle2);//声明DataGridColumnStyle3
DataGridTextBoxColumn ColumnStyle3 = new DataGridTextBoxColumn();
ColumnStyle3.MappingName = "QX_JS_MS";
ColumnStyle3.HeaderText = "描述";
ColumnStyle3.Width = 120;
ColumnStyle3.NullText="";
myTableStyle.GridColumnStyles.Add(ColumnStyle3);//声明DataGridColumnStyle5
DataGridBoolColumn ColumnStyle5 = new DataGridBoolColumn();
ColumnStyle5.MappingName = "QX_JS_SFYX";
ColumnStyle5.HeaderText = "有效";
ColumnStyle5.AllowNull = false;
ColumnStyle5.TrueValue = (Decimal)1;
ColumnStyle5.FalseValue = (Decimal)0;
ColumnStyle5.Width = 40;
myTableStyle.GridColumnStyles.Add(ColumnStyle5);//声明DataGridColumnStyle4
DataGridTextBoxColumn ColumnStyle4 = new DataGridTextBoxColumn();
ColumnStyle4.MappingName = "QX_JS_XSSX";
ColumnStyle4.HeaderText = "顺序";
ColumnStyle4.Width = 40;
myTableStyle.GridColumnStyles.Add(ColumnStyle4);dataGridMain.TableStyles.Clear();
dataGridMain.TableStyles.Add( myTableStyle );
}
#endregion
为绑定该数据库的datagrid指定dataGridTableStyle(点击TableStyles属性右边的按纽),设置dataGridTableStyle的MappingName为你的表名,然后再添加GridCloumnStyle(也是点击GridCloumnStyles右边的按纽)设置GridCloumnStyle为表中的列名,想要哪个显示就添加哪个,不要显示就不添加即可!MappingName一定要指定,不然没有效果!