Foxtable(狐表)用户栏目专家坐堂 → 内部控件怎么调用底层事件


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

主题:内部控件怎么调用底层事件

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


加好友 发短信
等级:婴狐 帖子:36 积分:349 威望:0 精华:0 注册:2013/1/4 18:45:00
内部控件怎么调用底层事件  发帖心情 Post By:2013/5/9 18:01:00 [只看该作者]

Dim 子表容器 As WinForm.Tabcontrol = Forms("数据区").CreateControl( "子表容器", ControlTypeEnum.Tabcontrol)
定义了一个控件之后能不能调用底层的事件,比如说
addhandler 子表容器.Selected,addressof 选择不同的子表页面_Selected

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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/5/11 8:37:00 [只看该作者]

可以的哦,你要用BaseControl,例如:
 
Dim ct As New Windows.Forms.Button
ct = e.Form.Controls("Button1").BaseControl
AddHandler ct.Click, AddressOf Button1_Click
 
 
 
 

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


加好友 发短信
等级:婴狐 帖子:36 积分:349 威望:0 精华:0 注册:2013/1/4 18:45:00
  发帖心情 Post By:2013/5/13 10:27:00 [只看该作者]

狐爸,请问这个有什么前提么
button的click事件就可以,
Dim tb As new windows.Forms.tabcontrol
tb = e.Form.Controls("Tabcontrol1").Basecontrol
AddHandler tb.SelectedIndexChanged,AddressOf Tabcontrol_SelectedIndexChanged
这个事件就不行,提示无法将类型为“Foxtable.O0O|OOO|101O|001”的对象强制转换为类型“System.Windows.Forms.Tabcontrol”


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/5/13 16:07:00 [只看该作者]

因为foxtable的TabControl并非Windows.Forms.TabControl,是另外一个控件

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


加好友 发短信
等级:婴狐 帖子:36 积分:349 威望:0 精华:0 注册:2013/1/4 18:45:00
  发帖心情 Post By:2013/5/14 9:46:00 [只看该作者]

请问下我想在一个tabcontrol1里每个页面动态生成一个tabcontrol,然后在selectedindexchanged事件里写如果页面转变则返回的是当前页动态生成的那个tabcontrol,因为我想在动态生成的tabcontrol写selectedindexchanged事件,如果动态生成的是内部的控件,就无法调用 selectedindexchanged事件,所以只能调用底层的控件,而调用底层控件,就无法用e.form.control()的方法获取控件,那怎么办呢。

 回到顶部