以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]保存后禁止修改已填写的单元格  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=105110)

--  作者:s7882087
--  发布时间:2017/8/11 15:11:00
--  [求助]保存后禁止修改已填写的单元格
求助,如何在一行保存之后,已填写内容的单元格禁止修改,以免篡改信息。但空的单元格可填写,且保存前可修改(因为同一行需要不同人填写)。
下面是我自己的代码,产生的问题就是,对于已经保存的行,空白单元格编写途中如果切出了单元格,就无法再次进行编辑,而不是保存前不能修改。
我知道代码的问题出在哪里,但是想了很久都没有想到解决的办法,求各位高手指点,谢谢!

If e.Row.DataRow.RowState <> DataRowState.Added Then \'不是新增加的行
    Dim t As Table = CurrentTable
    If t.Current.IsNull(t.ColSel) Then \'当前单元格为空
        e.Cancel = False
    Else
        e.Cancel = True
    End If
End If


--  作者:有点甜
--  发布时间:2017/8/11 15:25:00
--  

startEdit事件

 

If e.Row.DataRow.RowState <> DataRowState.Added Then \'不是新增加的行
    If e.Row.DataRow.OriginalIsNull(e.Col.name) Then
        e.Cancel = False
    Else
        e.Cancel = True
    End If
End If