以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]代码简化 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=2335) |
||||
-- 作者:ia928 -- 发布时间:2009/4/7 15:35:00 -- [求助]代码简化 下面的代码可以简化吗? If e.DataCol.Name = "二级名称" Dim drs As List(Of DataRow) = DataTables("订单明细").Select("[订单单号] = \'" & e.DataRow("订单单号") & "\'") For Each dr As DataRow In drs dr("二级名称") = e.DataRow("二级名称") Next End If If e.DataCol.Name = "三级名称" Dim drs As List(Of DataRow) = DataTables("订单明细").Select("[订单单号] = \'" & e.DataRow("订单单号") & "\'") For Each dr As DataRow In drs dr("三级名称") = e.DataRow("三级名称") Next End If |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/4/7 15:37:00 -- 1、 ReplaceFor
DataColName:替换的列
dr("折扣") = 0.15 Next |
||||
-- 作者:don -- 发布时间:2009/4/7 15:48:00 -- If e.DataCol.Name In("二级名称","三级名称") Then Dim T1,T2 As String Dim drs As List(Of DataRow) T1 = e.DataCol.Name T2 = "[订单单号] = \'" & e.DataRow("订单单号") & "\'" drs = DataTables("订单明细").Select(T2) For Each dr As DataRow In drs dr(T1) = e.DataRow(T1) Next End If |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/4/7 15:50:00 -- |
||||
-- 作者:ia928 -- 发布时间:2009/4/7 16:21:00 -- 上传实例,请指教,表B中不使用关联表达式,只在表A中使用DataColChangde事件代码,其中的代码如何简化,谢谢
|
||||
-- 作者:don -- 发布时间:2009/4/7 16:31:00 -- If "二批名称,终端名称".Indexof(e.DataCol.Name) > -1 Then Dim T1,T2 As String Dim drs As List(Of DataRow) T1 = e.DataCol.Name T2 = "[订单单号] = \'" & e.DataRow("订单单号") & "\'" drs = DataTables("表B").Select(T2) For Each dr As DataRow In drs dr(T1) = e.DataRow(T1) Next End If |
||||
-- 作者:ia928 -- 发布时间:2009/4/7 16:41:00 -- 谢谢don,还需深刻领会。 |