求教高人,几个结构相同的DATATABLE合并,但是更改要在合并表、子表里显示

pejiwww01 2012-09-15 10:16:46
求教高人,有几个结构相同的DATATABLE,例如a,b,c
希望把A,B,C的数据合并到一个表里操作,但是假如合并表里a表那一行数据改变了,单独看a表数据也是变的,
这种效果该如何做?谢谢!
...全文
71 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dalmeeme 2012-09-15
  • 打赏
  • 举报
回复
另外你也可以用DataTable对象的RowChanging事件试试。
dalmeeme 2012-09-15
  • 打赏
  • 举报
回复
		DataTable dt1 = new DataTable();
dt1.Columns.Add("id", typeof(int));
dt1.Rows.Add(1);
dt1.Rows.Add(2);
DataTable dt2 = dt1.Clone();
dt2.Rows.Add(11);
dt2.Rows.Add(12);
DataTable dt = new DataTable();
dt.Merge(dt1);
dt.Merge(dt2);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.Tables.Add(dt1);
ds.Tables.Add(dt2);
DataRelation dataRelation1 = new DataRelation(null, dt.Columns[0], dt1.Columns[0]);
DataRelation dataRelation2 = new DataRelation(null, dt.Columns[0], dt2.Columns[0]);
ds.Relations.Add(dataRelation1);
ds.Relations.Add(dataRelation2);
dt.Rows[0]["id"] = 100; //修改合并表中原表1的某个值
dt.Rows[3]["id"] = 9999; //修改合并表中原表2的某个值
GridView1.DataSource = dt1;
GridView1.DataBind();
GridView2.DataSource = dt2;
GridView2.DataBind();
GridView3.DataSource = dt;
GridView3.DataBind();


结果:
表1:
id
100
2


表2:
id
11
9999


合并表:
id
100
2
11
9999
pejiwww01 2012-09-15
  • 打赏
  • 举报
回复
在线等,求教
pejiwww01 2012-09-15
  • 打赏
  • 举报
回复
在线等,求教
pejiwww01 2012-09-15
  • 打赏
  • 举报
回复
比如a 表
a 1
b 2
c 3
b表
aa 11
bb 22
cc 33
合并起来
a 1
b 2
c 3
aa 11
bb 22
cc 33

但是假如a表里 a 1 变为 a 1000
合并表里第一行也变为a 1000
类似引用多个表看起来象一个表 而不是传值新建一个合并表的意思

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧