Foxtable(狐表)用户栏目专家坐堂 → 请教:能否动态设置AfterSelRangeChange事件代码


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

主题:请教:能否动态设置AfterSelRangeChange事件代码

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


加好友 发短信
等级:六尾狐 帖子:1425 积分:11332 威望:0 精华:0 注册:2008/9/1 22:20:00
请教:能否动态设置AfterSelRangeChange事件代码  发帖心情 Post By:2017/2/7 15:48:00 [只看该作者]

窗口表操作


目录树筛选时每次都从后台查询数据,然后给窗口表绑定数据源。


每次绑定数据源,都会导致在窗口表的 AfterSelRangeChange 事件里设置的代码报错


请教是否能够动态设置窗口表的AfterSelRangeChange 事件代码?


或者有其他避免出错的方法?



[此贴子已经被作者于2017/2/7 15:48:17编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/7 15:49:00 [只看该作者]


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


加好友 发短信
等级:六尾狐 帖子:1425 积分:11332 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2017/2/7 16:02:00 [只看该作者]

用这个方法不管事,还是报错。
Tables("窗口1_Table1").Select(-1, -1)

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/7 16:03:00 [只看该作者]

 那就修改系统菜单的 AfterSelRangeChange 事件。

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


加好友 发短信
等级:六尾狐 帖子:1425 积分:11332 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2017/2/7 16:04:00 [只看该作者]

在 t.datasource=dt 之前设置t.Select(-1, -1) 无效果

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


加好友 发短信
等级:六尾狐 帖子:1425 积分:11332 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2017/2/7 16:06:00 [只看该作者]

请问:单击窗口表头触发什么事件?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/7 16:10:00 [只看该作者]

以下是引用bahamute在2017/2/7 16:06:00的发言:
请问:单击窗口表头触发什么事件?

 

不触发任何事件。如果选中了所有行,就会触发行选择事件。


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


加好友 发短信
等级:六尾狐 帖子:1425 积分:11332 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2017/2/7 16:22:00 [只看该作者]

我用的自定义菜单
修改AfterSelRangeChange事件 为以下代码好像无效

 

Dim t As Table

RibbonMenu.StatusBar.Message3 = ""

Vars("SysUpdateAggregate") = False

If e.Table IsNot CurrentTable OrElse CurrentTable Is Nothing Then

    Return

Else

    t = CurrentTable

End If

If t.TopRow = t.BottomRow AndAlso t.LeftCol = t.RightCol Then

    Return

End If

For c As Integer = t.LeftCol To t.RightCol

    If C > 0 Then

        If t.Cols(c).IsNumeric = False Then

            Return

        End If

    End If

Next

Vars("SysUpdateAggregate") =  True


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/7 16:27:00 [只看该作者]

 把AfterSelRangeChange事件代码去掉也不行?那上传实例说明。

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


加好友 发短信
等级:六尾狐 帖子:1425 积分:11332 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2017/2/7 16:43:00 [只看该作者]

用此参数解决问题。
Tables("窗口1_Table1").Select(0, 0)

 回到顶部