'--------改良独占式编辑
If e.Table.DataTable.DataCols.Contains("编辑者") AndAlso e.Table.IsRelation =False Then
If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行
Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
Dim i As Integer = 0
For Each c As Col In e.Table.Cols
If r.DataRow.OriginalValue(c.name) <> r(c.name) AndAlso c.name<>"编辑者" AndAlso c.name<>"Log" Then '不检查编辑者列和Log列
i = i+1
End If
Next
If i = 0 Then
r.reject '恢复行状态
Dim cmd1 As New SQLCommand
cmd1.C
cmd1.CommandText = "S elect 编辑者 From {" & e.Table.Name & "} Where [_Identify] = " & r.DataRow("_Identify")
Dim nm As String = cmd1.ExecuteScalar
If nm = _UserName Then
If r.DataRow.RowState = DataRowState.Added Then '如果是新增行
r.DataRow("编辑者") = Nothing
Else
Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "U pdate {" & e.Table.Name & "} Set 编辑者 = Null Where [_Identify] = " & r.DataRow("_Identify")
If cmd.ExecuteNonQuery = 1 Then
r.DataRow("编辑者") = Nothing
End If
End If
End If
End If
End If
End If
End If