Foxtable(狐表)用户栏目专家坐堂 → 如何在某窗体禁用全局表事件


  共有1683人关注过本帖树形打印复制链接

主题:如何在某窗体禁用全局表事件

帅哥哟,离线,有人找我吗?
huangxueyao
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
如何在某窗体禁用全局表事件  发帖心情 Post By:2018/7/10 10:16:00 [只看该作者]

For Each c As object In e.Form.Controls
    If Typeof c Is WinForm.Table Then '判断控件是否是文本框
        Dim t As Table = c.Table '使用特定类型的变量引用控件
        t.DataTable.DeleteFor("")
        t.DataTable.GlobalHandler.CurrentChanged = False
        t.DataTable.GlobalHandler.PositionChanged= False
        t.DataTable.GlobalHandler.AfterSelChange= False
        t.DataTable.GlobalHandler.AfterSelRangeChange= False
        t.DataTable.AddUserStyle("浅红", Color.MistyRose, Color.black)
        t.DataTable.AddUserStyle("浅蓝", Color.LightSkyBlue, Color.black)
        t.DataTable.AddUserStyle("浅黄", Color.PapayaWhip, Color.black)
        t.DataTable.AddUserStyle("浅绿", Color.LightGreen, Color.black)
    End If
Next

某个窗体中我有多个查询表,在窗体afterload中我加了这样的代码
但是貌似全局表事件还是会执行,怎么破?

 回到顶部
帅哥哟,离线,有人找我吗?
huangxueyao
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
  发帖心情 Post By:2018/7/10 10:36:00 [只看该作者]

是因为我用了fill然后相当于重新加载了datatable??

 回到顶部
帅哥哟,离线,有人找我吗?
huangxueyao
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
  发帖心情 Post By:2018/7/10 10:39:00 [只看该作者]

或者用了SQLcommand加载的也要重新禁用?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/10 11:00:00 [只看该作者]

1、测试是否执行,在对应事件加入代码,看状态栏是否变化

 

StatusBar.Message1 = e.Table.name & " " & Date.now

StatusBar.Refresh

 

2、你重新fill或者重新设置datasource,全局表事件默认是不开启的,如果有问题,做个例子发上来测试。


 回到顶部