以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  我在全局表事件中设置了  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80958)

--  作者:kaituozhe
--  发布时间:2016/2/14 16:05:00
--  我在全局表事件中设置了

在全局表事件PrepareEdit设置了如下代码

If e.Row.IsNull("审核") = False Then \'如果审批列不为空
    e.Cancel = True \'则禁止编辑
End If

在项目Initialize事件设置了如下代码:

For Each dt As DataTable In DataTables
    dt.GlobalHandler.PrepareEdit = True
Next

 

为什么一些表审核行不为空还能修改呢


--  作者:Hyphen
--  发布时间:2016/2/14 16:27:00
--  
如果是SQLTable或者动态生成的表,需要 重新设置GlobalHandler
--  作者:kaituozhe
--  发布时间:2016/2/14 16:57:00
--  

不是你说的那些表


--  作者:Hyphen
--  发布时间:2016/2/14 17:20:00
--  
上传例子说明
--  作者:大红袍
--  发布时间:2016/2/15 9:41:00
--  
以下是引用kaituozhe在2016/2/14 16:57:00的发言:

不是你说的那些表

 

那些表是不是打开项目以后动态生成的?这样你就必须重写绑定事件。

 

 


--  作者:kaituozhe
--  发布时间:2016/2/15 12:22:00
--  
好的,我明白了,怎么动态写绑定事件时,在动态生成时也动态绑定
--  作者:大红袍
--  发布时间:2016/2/15 14:22:00
--  

生成表的时候,运行代码

 

DataTables("某表").GlobalHandler.PrepareEdit = True


--  作者:kaituozhe
--  发布时间:2016/2/15 19:43:00
--  
打开项目重新加载的数据,即使审核了也可以修改,怎么能禁止修改呢?
--  作者:大红袍
--  发布时间:2016/2/15 19:43:00
--  
 不可能,例子说明
--  作者:kaituozhe
--  发布时间:2016/2/15 19:52:00
--  
刚才少打了一个字,打开项目后重新加载的数据即使审核了也还能编辑