辛苦了甜老师。档案明细表的Datacolchanged事件:
'多列的跨表更新
If e.DataCol.Name = "档案编号" Then
If e.NewValue Is Nothing Then
e.DataRow("档案名称") = Nothing
e.DataRow("档案类型") = Nothing
e.DataRow("归档日期") = Nothing
e.DataRow("保管期限") = Nothing
e.DataRow("部门2") = Nothing
e.DataRow("部门2") = Nothing
e.DataRow("办事处") = Nothing
e.DataRow("档案移交人") = Nothing
e.DataRow("档案室") = Nothing
e.DataRow("档案柜") = Nothing
Else
Dim dr As DataRow = e.DataRow.GetParentRow("档案管理总表")
If dr IsNot Nothing
e.DataRow("档案编号") = dr("档案编号")
e.DataRow("档案名称") = dr("档案名称")
e.DataRow("档案类型") = dr("档案类型")
e.DataRow("归档日期") = dr("归档日期")
e.DataRow("保管期限") = dr("保管期限")
e.DataRow("部门1") = dr("部门1")
e.DataRow("部门2") = dr("部门2")
e.DataRow("办事处") = dr("办事处")
e.DataRow("档案移交人") = dr("档案移交人")
e.DataRow("档案室") = dr("档案室")
e.DataRow("档案柜") = dr("档案柜")
End If
End If
End If
'将录入的主表的字段关联到明细表中
Dim zdmc As DataRow
zdmc = DataTables("档案管理总表").Find("[档案编号] = '" & e.DataRow("档案编号") & "'")
If zdmc IsNot Nothing Then
e.DataRow("档案名称") = zdmc("档案名称")
e.DataRow("档案类型") = zdmc("档案类型")
e.DataRow("归档日期")=zdmc("归档日期")
e.DataRow("保管期限") = zdmc("保管期限")
e.DataRow("部门1") = zdmc("部门1")
e.DataRow("部门2")=zdmc("部门2")
e.DataRow("办事处") = zdmc("办事处")
e.DataRow("档案移交人") = zdmc("档案移交人")
e.DataRow("档案室")=zdmc("档案室")
e.DataRow("档案柜") = zdmc("档案柜")
End If
档案管理总表的datacolchanged事件:If e.DataCol.name="档案编号" AndAlso e. DataRow.isnull("档案编号")=False Then
Dim dr As DataRow = DataTables("档案管理明细").addnew
dr("档案编号")=e.DataRow("档案编号")
End If
'关联表
Select Case e.DataCol.Name
Case "档案编号" , "档案名称","档案类型","归档日期","保管期限","部门1","部门2","办事处","档案移交人","档案室","档案柜"
Dim drs As List(Of DataRow) = e.DataRow.GetChildRows("档案管理明细")
For Each dr As DataRow In drs
dr(e.DataCol.Name) = e.NewValue
Next
End Select
您看看是不是代码有问题啊?