再测试了一下,是关联的问题。
流程_客户资料,用了两个字段关联,新增父表的时候,自动新增一行子表了,但是一个关联字段是空值,这样在绑定的控件上输入关联字段的时候,就出现了这样的错。
在表里输入,就不会出错。
之后,把datacolchanged里面的代码改成这样,就不会出错。意思是必须 流程号和合同号 都填入了值,才能生成子表数据。楼主你照着改变一下思路
Select Case e.DataCol.Name
Case "流程单号", "合同编号"
If e.DataRow.IsNull("流程单号") = False AndAlso e.DataRow.IsNull("合同编号") = False Then '如果已经输入订单编号
If e.DataRow.GetChildRows("客户资料").Count = 0 Then '而且无订单明细
Dim dr As DataRow = DataTables("客户资料").AddNew()
dr("流程单号") = e.DataRow("流程单号")
dr("合同编号") = e.DataRow("合同编号")
End If
If e.DataRow.GetChildRows("技术").Count = 0 Then '而且无订单明细
Dim dr As DataRow = DataTables("技术").AddNew()
dr("流程单号") = e.DataRow("流程单号")
End If
If e.DataRow.GetChildRows("财务数据").Count = 0 Then '而且无订单明细
Dim dr As DataRow = DataTables("财务数据").AddNew()
dr("流程单号") = e.DataRow("流程单号")
End If
End If
End Select