datagrid中关系表子表的定位问题,高手请进!!!

xdwlb 2003-10-17 04:43:13
有两个表'固定资产''附属设备',我建立了两表的关系,并把这两个表填充到同一集,代码如下:
dim myds as new dataset()
Dim mda0 As New SqlDataAdapter("select * from 固定资产",conn)
mda0.fill(myds,"固定资产")
dim mda1 as new sqldataadapter("select * from 附属设备",conn)
mda1.fill(myds,"附属设备")

dim relfssb as datarelation=new datarelation("附属设备",myds.tables("固定资产").columns("固定资产编号"),myds.tables("附属设备").columns("固定资产编号")
myds.relations.add(relfssb)

datagrid1.datasource=mds.tables("固定资产")
对记录编辑时,弹出新窗体,在新窗体中编辑,现在父表定位没问题,子表没有找到定位的方法。请高手给出思路或代码。
...全文
97 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xdwlb 2003-10-17
  • 打赏
  • 举报
回复
非常感谢gshope(gshope),在gshope(gshope)的提示下我已经解决了:方法:
Dim dr As DataRow = mds.Tables("固定资产").Rows(DataGrid1.CurrentRowIndex)
Dim drc() As DataRow = dr.GetChildRows(relfssb)
Dim i as int32=tdbgrid1.currentcell.rownumber
drc(i)就是我选定的字表行。
结帐
xdwlb 2003-10-17
  • 打赏
  • 举报
回复
我的意思是这样的:展开了子表,并选中了某一行,如何才能定位出选定行,并在新窗口中对其数据进行编辑。DataRow[] drs=dr.GetChildRows ("relfssb")只是将与父表选中行对应的子表行选了出来,没有进行定位到底我选中了那一行。
xdwlb 2003-10-17
  • 打赏
  • 举报
回复
to gshope:
能给出详细的代码吗?我现在对.net 还不熟练。
gshope 2003-10-17
  • 打赏
  • 举报
回复
我是用C#,
DataRow[] drs=dr.GetChildRows ("relfssb");
注意,dr是父表中的一个DataRow,drs是关系对应的一个DataRow数据。

110,533

社区成员

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

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

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