以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 遍历的疑问,望精通者释惑 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=32830) |
-- 作者:zerov -- 发布时间:2013/5/9 6:52:00 -- 遍历的疑问,望精通者释惑 1、将所有表的审核列设置为:如果已经审核,则不允许修改 For Each dt As DataTable In DataTables \'遍历所有表 For Each dc As Datacol In dt.Datacols ‘遍历所有列 if e.datacols.name = "审核" then ’如果是审核列 if e.datacols("审核")= true then ‘如果已经审核 e.datarow("审核").AllowEdit = True 则锁定该行,此行不允许修改 end if end if next next 疑问:1、此句对不对? 2、此句是不是设定在datatablechanging中 3、这种嵌套遍历是不是会很慢? 如果想把所有表设置为当前行为突出显示呢,又如何做?
|
-- 作者:lsy -- 发布时间:2013/5/9 8:31:00 -- DataColChanging
If e.DataCol.Name = "审核" AndAlso e.DataRow("审核") = True then e.Cancel = True End If [此贴子已经被作者于2013-5-9 8:55:17编辑过]
|
-- 作者:zerov -- 发布时间:2013/5/9 12:39:00 -- 回复:(lsy)DataColChanging?If e.DataCol... 不起作用,你这个只能针对某个表事件吧,在全局表中的pe或锁定行中设置,提示不是其中的成员。 [此贴子已经被作者于2013-5-9 12:47:30编辑过]
|
-- 作者:blackzhu -- 发布时间:2013/5/9 12:41:00 -- 表事件 |
-- 作者:lsy -- 发布时间:2013/5/9 13:56:00 -- 以下是引用zerov在2013-5-9 12:39:00的发言:
不起作用,你这个只能针对某个表事件吧,在全局表中的pe或锁定行中设置,提示不是其中的成员。 [此贴子已经被作者于2013-5-9 12:47:30编辑过] 小伙子,学艺不精啊。 |
-- 作者:jijianjsj -- 发布时间:2013/5/9 15:03:00 -- e.datarow("审核").AllowEdit = false 则锁定该行,此行不允许修改 遍历所有表所有列,很慢吧。。。 我遍历所有表是否haschange都觉得慢了。。。。 [此贴子已经被作者于2013-5-9 15:06:24编辑过]
|
-- 作者:jspta -- 发布时间:2013/5/9 15:24:00 -- 以下是引用zerov在2013-5-9 6:52:00的发言:
1、将所有表的审核列设置为:如果已经审核,则不允许修改 For Each dt As DataTable In DataTables \'遍历所有表
For Each dc As Datacol In dt.Datacols ‘遍历所有列 if e.datacols.name = "审核" then ’如果是审核列
if e.datacols("审核")= true then ‘如果已经审核
e.datarow("审核").AllowEdit = True 则锁定该行,此行不允许修改
end if
end if
next
next
疑问:1、此句对不对? 2、此句是不是设定在datatablechanging中
3、这种嵌套遍历是不是会很慢?
如果想把所有表设置为当前行为突出显示呢,又如何做? For Each dt As DataTable In DataTables \'遍历所有表 cmd.ExecuteNonQuery 只要设置一个按钮执行就行了,不需要放到表事件里,而且这个只需要执行一次,不需要每次启动执行,锁定行是永久性的 |
-- 作者:nblwar -- 发布时间:2013/5/9 19:04:00 -- PrepareEdit If e.Table.Cols.Contains("审核") Then If e.Row("审核") = True Then e.Cancel = True End If End If 然后在项目事件Initialize加入代码: For Each dt As DataTable In DataTables [此贴子已经被作者于2013-5-9 19:06:24编辑过]
|
-- 作者:zerov -- 发布时间:2013/5/10 10:32:00 -- 回复:(nblwar)PrepareEditIf e.Table.Cols.Contain... 谢谢,解决 |