有这样一个问题:
两张表,分别如下:
表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的维护
得到正确回答后马上结分
两张表,分别如下:
表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的维护
得到正确回答后马上结分
解决方案 »
- 使用C#调用DiskID32.dll获取硬盘序列号的问题
- C# winform 的问题 高手速来 急急急~~~
- Windows服务的启动路径
- 数据查询的问题
- 早段时间很多人要这本书吧?全新C#入门经典(第3版),现在我50块卖掉.
- 请一个关于FCKeditor控件的图片上传的问题
- 反射构造方法 构造方法中带参 的问题 请教高手
- 如何创建线程子控件?
- c#中字体大小随控件的自动变化而变化。这个怎么实现啊。
- 请问C#.net 中,编写windows应用程序的时候,怎么没有实现像一般记事本按下Ctr+F弹出的对话框控件啊??
- ("../../Class1.cs", FileMode.Open);能给解释一下目录是在那一层
- Arraylist 如何添加 SQLserver 表中的数据
{
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
}
select b.Name2,a.Name1 from 表2 as b inner join 表1 as a on(a.id=b.id)
这样是最好的方法
guqst兄弟说的view是个什么,没用过,能不能具体讲讲。
其实生成表头问题并不大,我是直接通过读取数据库获取字段值的方法动态生成各列的,没有用DataSet。
现在的问题是表1有人维护,表2初始是空的,也就是说DataGridView初始是空的,我希望通过在DataGridView中添加行对表2进行维护。
还有一个问题,对DataGridView的添加、修改、删除诸位有没有什么好一些的想法,比如说是直接在单元格中修改还是在另一个面板中通过给出各列的值后写入DataTable或直接写入数据库。
=================给你一个 容易懂的方法===============================
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();
da.Fill(ds);this.DataGridView=ds.Tables[0];
dsValue 这个是表2,主要提供数据这两个表都要从数据库表拿出来转化成DataTable类型。