Dim ids As String
For Each dr As DataRow In DataTables("商品档案").DataRows
ids = ids & "," & dr("商品编码")
Next
ids= ids.Trim(",")
DataTables("商品套件名称").LoadFilter = "商品编码 In (" & ids & ")"
DataTables("商品套件名称").Load()
我在表事件AfterLoad写入此代码,但是加载时出错,我后来看了一下是子表没有数据的原因.我写入这样的一句判断:
If Tables(e.DataTable.Name).Current.DataRow.GetChildRows("商品套件名称").Count =0 Then
Return
End If
这样写对吗?
Dim ids As String = “”
For Each dr As DataRow In DataTables("商品档案").DataRows
ids = ids & "," & dr("商品编码")
Next
ids= ids.Trim(",")
if ids > "" then
DataTables("商品套件名称").LoadFilter = "商品编码 In (" & ids & ")"
DataTables("商品套件名称").Load()
end if
不明白了. 我在主表的
AfterLoad 里面设置如下的代码,
Dim
ids
As
String
For
Each dr As
DataRow
In
DataTables("订单").DataRows
ids = ids & "," & dr("订单ID")
Next
ids= ids.Trim(",")
DataTables("订单明细").LoadFilter
= "订单ID In (" & ids & ")"
DataTables("订单明细").Load()
我在窗口做个按钮 放入一个文本框,在按钮中放入了代码
DataTables("订单").LoadFilter = "订单ID ='" & e.form.Controls("Textbox1").Value & "'"
DataTables("订单").Load()
做动态加载,结果出来的提示是:
此主题相关图片如下:tm截图未命名.jpg

[此贴子已经被作者于2011-11-22 16:30:44编辑过]
Dim ids As String
For Each dr As DataRow In DataTables("借款表").DataRows
ids = ids & "," & "'" & dr("借款编号") & "'"
Next
ids = ids.Trim(",")
if ids > "" then
DataTables("还款表").LoadFilter = "借款编号 In (" & ids & ")"
DataTables("还款表").Load()
end if
这样就OK了,试试
[此贴子已经被作者于2011-11-22 17:02:11编辑过]