只是让您学学当2个表列名不一致的时候人家是怎么处理的。不是让你照抄别人代码。您的处理逻辑和select有一分钱的关系吗
If e.DataCol.Name = "dnd_so" orelse e.DataCol.Name = "dnd_wo_part" Then
Dim nms() As String = {"dnd_cust", "dnd_cust_part", "dnd_xl", "dnd_dy", "dnd_rl", "dnd_zj", "dnd_gd", "dnd_rc"}
If e.NewValue Is Nothing Then
For Each nm As String In nms
e.DataRow(nm) = Nothing
Next
Else
Dim dr As DataRow
dr = DataTables("so_det").Find("(so_cust_dh = '" & e.DataRow("dnd_so") & "') and(so_part = '" & e.DataRow("dnd_wo_part") & "')")
If dr IsNot Nothing Then
Dim Cols1() As String = {"so_cust", "so_cust_part", "so_xl", "so_dy", "so_rl", "so_zj", "so_gd", "so_rc"}
For i As Integer = 0 To Cols1.Length -1
e.DataRow(nms(i)) = dr(Cols1(i))
Next
End If
End If
End If