紧急求助!DataGridView动态表的生成
有这样一个问题:
两张表,分别如下:
表1 表2
id Name1 Name2 id value
01 aaa AAA 01 1
02 bbb AAA 02 2
BBB 01 3
BBB 02 4
现在想用DataGridView动态创建这样的表
Name2 aaa bbb
AAA 1 2
BBB 3 4
请问如何实现DataGridView的维护
得到正确回答后马上结分
------解决方案--------------------要搞定DataGridView,就要先搞定DataTable,然后换成DataSet,用DataSet绑定DataGridView
private DataSet MergeTable(DataSet dsColumn, DataSet dsValue)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataColumn dc = new DataColumn();
// 加入第一列
dc = new DataColumn( "Name2 ",(Type) "String ");
dt.Column.Add(dc);
// 根据表1加入其他列
foreach (DataRow dr in dsColumn.Rows)
{
dc = new DataColumn(dr[ "ColumnName "].ToString(), (Type) "Int32 ");
dt.Columns.Add(dc);
}
}
// 这时候,新的DataTable已经建立起来了,格式为
// Name2 aaa bbb 表格是空的
// 写入新值,写到DataTable dt中,偶就不写了……
// 装载数据表
ds.Tables.Add(dt)
return ds
}
------解决方案--------------------大致思路是,取得表1中Name1 字段内容,根据内容创建对应类,然后生成一个DataTable。此外根据表1中字段 Name1对应的id来匹配表2中对应id ,然后取得表2中value列的值。
楼主,貌似难度不大,只要实现成代码就行了。
------解决方案--------------------如果可以的话直接在数据库里生成一个view(源自你要得两张表),然后直接给DataGridView使用
------解决方案-------------------- =================给你一个 容易懂的方法===============================
string sql= "select 表2.Name2, 表1.Name1,表2.Value from 表2 inner join 表1 on 表1.id=表2.id ";
SqlConnection conn = new SqlConnection( "Server=.;Database=master;Integrated Security=SSPI ");
SqlDataAdapter da = new SqlDataAdapter(sql,conn);
DataSet ds = new DataSet();