以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]如果当前表被锁定,则Click事件弹出窗口都被锁定 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49563) |
|
-- 作者:chnfo -- 发布时间:2014/4/20 13:50:00 -- [求助]如果当前表被锁定,则Click事件弹出窗口都被锁定 表的click事件: Select Case e.Col.Name Case "Code" Forms("窗口1").open() End Select 窗口1的AfterLoad事件 ‘第一种方法,不能锁定Tab分页夹的子表(子表是一个SqlTable,是在这个Tab中插入了一个SplitContainer分隔开来的)’ ‘这里面的主表都是Norm类型的,绑定了数据表且设为了副本且设为允许编辑’ For Each wc As WinForm.Control In e.Form.Controls If Typeof wc Is winform.Table Then Dim wt As winform.Table = wc wt.Table .AllowEdit = ( Tables("表A").Current IsNot Nothing AndAlso Tables("表A").Current("Audit") = False ) End If Next \'第二种方法好象更无效,因为使用了SplitContainer控件,所以直属于TabPage的控件只有表,这个问题找到 For Each pg As WinForm.TabPage In e.Form.Controls("TabControl1").TabPages For Each c As WinForm.Control In pg.Children If Typeof c Is WinForm.Table Then Dim tb As winform.Table = c wt.Table .AllowEdit = ( Tables("表A").Current IsNot Nothing AndAlso Tables("表A").Current("Audit") = False ) End If Next Next 请教各位,问题在哪里呢?
[此贴子已经被作者于2014-4-20 14:13:17编辑过]
|
|
-- 作者:有点甜 -- 发布时间:2014/4/20 14:10:00 -- 第二种方法无效?不应该,是否有例子?
你msgbox弹出一下内容看看。 |
|
-- 作者:chnfo -- 发布时间:2014/4/20 14:19:00 -- 第二种方法好象更无效,因为使用了SplitContainer控件,所以直属于TabPage的控件只有表,这个问题找到 ---第二种方法有效。刚测试过,但因为我在TabPage里又嵌了SplitContainer控件,所以表面看起来无效。 如果是表直接放在TabPage里,就没有问题 我更想知道的是为什么第一种方法控制不到子表。
|
|
-- 作者:jspta -- 发布时间:2014/4/20 14:21:00 -- 不是很清楚要干什么,表锁定就不弹出窗口?
|
|
-- 作者:chnfo -- 发布时间:2014/4/20 14:27:00 -- 不好意思,我在子表里加了一个allowedit=true. 疏忽疏忽。
|