我设计了这样一个独占式编辑窗口
此主题相关图片如下:未命名.jpg
当执行如下操作时,
点击修改-》保存或撤消-》修改-》保存或撤消
这个过程中,内容不做任何修改,
但是第一次点完保存或撤消按钮,后台的编辑者列并不能清空,第二次就可以清空,如此反复。
修改按钮代码如下:
Dim cmd As New SQLCommand
cmd.ConnectionName = _ConnectName
Dim exp As String = "(sys_locked Is Null Or sys_locked = '" & _UserName & "') And [_Identify] = " & Tables("t_yg").Current("_Identify")
cmd.CommandText = "Update {t_yg} Set sys_locked = '" & _UserName & "' Where " & exp
If cmd.ExecuteNonQuery = 1 Then
'编辑者更新成功,输入框有效化
此处省略
Else
cmd.CommandText = "Select sys_locked From {t_yg} Where [_Identify] = " & Tables("t_yg").Current("_Identify")
Dim nm As String = cmd.ExecuteScalar
If nm > "" Then
MessageBox.show(nm & "正在编辑此行!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
cmd.CommandText = "Select Count(*) From {t_yg} Where [_Identify] = " & Tables("t_yg").Current("_Identify")
If cmd.ExecuteScalar =0 Then
MessageBox.show("此行已被他人删除!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If
End If
End If
保存按钮代码:
Tables("t_yg").Current("sys_locked") = Nothing
Tables("t_yg").Current("lastedit") = _UserName
Tables("t_yg").Current.Save()
Tables("t_yg").Current.DataRow.Load()
撤消按钮代码如下:
Tables("t_yg").Current.Reject() '撤销编辑
Tables("t_yg").Current("sys_locked") = Nothing
Tables("t_yg").Current.Save()
DataTables("t_yg").Load
请帮忙看下是什么原因呢?
[此贴子已经被作者于2011-7-7 14:13:08编辑过]