日期:2014-05-20  浏览次数:20373 次

怎么样数据库中表的行绑定到DataGrid的列?把表中的列绑定到行?就是把一个表立起来看
如题,就是这样,原表:
姓名   班级   年龄   学号
小王     2         18         11

现在立起来看(即绑定后):
姓名   小王
班级     2
年龄     18
学号       11

请问大家这样的效果用DataGrid怎么来实现啊?


------解决方案--------------------
那如果原表中有多行怎么显示?
------解决方案--------------------
没有简单的方法:
从数据库中取出数据放到DataTable1中,自定义DataTable2。按相应的格式把数据放到DataTable2


------解决方案--------------------
组织一个你想要格式的Table,然后绑定
------解决方案--------------------
关注,替你顶
------解决方案--------------------
//把添加的用户信息放到td表中
DataTable td = new DataTable();
td.Columns.Add( "name ",Type.GetType( "System.String "));
td.Columns.Add( "info ",Type.GetType( "System.String "));
td.Rows.Add(new object[] { "用户姓名: "});
td.Rows.Add(new object[] { "用户昵称: "});
td.Rows.Add(new object[] { "用户密码: "});
td.Rows.Add(new object[] { "部 门: "});
td.Rows.Add(new object[] { "角 色: "});
td.Rows.Add(new object[] {this.TextBox1.Text.Trim()});
td.Rows.Add(new object[] {this.TextBox2.Text.Trim()});
td.Rows.Add(new object[] {this.TextBox3.Text.Trim()});
td.Rows.Add(new object[] {this.DropDownList2.SelectedValue.Trim()});
td.Rows.Add(new object[] {this.DropDownList1.SelectedValue.Trim()});
//把td表绑定到DataList控件
DataList1.DataSource = td;
DataList1.DataBind();

for(int i = 0;i < td.Rows.Count;i++)
{
string str = td.Rows[i][0].ToString();
((Label)this.DataList1.Items[i].Controls[1]).Text = str;
}
------解决方案--------------------
帮顶
------解决方案--------------------
dongdongxxx(独自爱你)说的挺清楚的
------解决方案--------------------
Oracle里面就有可以实现行列互换的函数
sql里面虽然没有但是实现的原理应该差不多

可惜我没写过,有时间可以试着写写

建议这个问题到数据库里去做!
------解决方案--------------------
只要你让DataGrid把自己的类型自动改为dirGataD,那么其它代码不用改动它就成了新的控件了。