Foxtable(狐表)用户栏目专家坐堂 → 请教:二个DataList如何显示关联?


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

主题:请教:二个DataList如何显示关联?

美女呀,离线,留言给我吧!
yangming
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
请教:二个DataList如何显示关联?  发帖心情 Post By:2009/5/7 16:52:00 [只看该作者]

我的一个窗口中加入了DataList1和一个按钮,DataList1动态绑定了员工档案表,按钮中代码是打开"个人简历"的窗口,而个人简历窗口中又有一个DataList2,是绑定的个人简历表,本生员工档案与个人简历二表就是以工号做为关联的,我的想法是:当窗口一中光标停在一行时,打开的个人简历窗口就能显示出关联行,不知这样的代码如何写?

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/5/7 17:10:00 [只看该作者]

在窗口2的AfterLoad事件中加入:

Dim dr As DataRow = forms("窗口1").Controls("DataList1").Current '取得窗口1选择的员工行

e.Form.Controls("DataList1").RowFilter = "[工号] = '" & dr("工号") & "'" 

[此贴子已经被作者于2009-5-7 17:10:14编辑过]

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


加好友 发短信
等级:童狐 帖子:252 积分:1355 威望:0 精华:0 注册:2009/4/5 13:06:00
  发帖心情 Post By:2009/5/7 17:18:00 [只看该作者]

Dim dtl1 As WinForm.DataList = Forms("员工档案").Controls("DataList1")
Dim dtl2 As WinForm.DataList = e.Form.Controls("DataList2")
Dim dr as DataRow = dtl1.Current
If dr IsNot Nothing Then
    dtl2.RowFilter = "[工号] = '" & dr("工号") & "'"
End If

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


加好友 发短信
等级:童狐 帖子:252 积分:1355 威望:0 精华:0 注册:2009/4/5 13:06:00
  发帖心情 Post By:2009/5/7 17:19:00 [只看该作者]

我*,和老六差远了图片点击可在新窗口打开查看

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/5/7 17:23:00 [只看该作者]

哪里啊?
你的代码和我一样,而且你的更清晰严谨啊。
[此贴子已经被作者于2009-5-7 17:29:13编辑过]

 回到顶部
美女呀,离线,留言给我吧!
yangming
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/7 17:25:00 [只看该作者]

八婺的代码确实比贺老师的好懂,呵呵,谢谢二位老师!

 回到顶部
美女呀,离线,留言给我吧!
yangming
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/7 17:37:00 [只看该作者]

二位老师的代码是能在找开窗口二时就是我选的行,但是不能动态的显示出关联来,有何办法?

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/5/7 17:59:00 [只看该作者]

以下是引用yangming在2009-5-7 17:37:00的发言:
二位老师的代码是能在找开窗口二时就是我选的行,但是不能动态的显示出关联来,有何办法?


你的意思是两个窗口同时打开,在窗口1中选择移一行,窗口2动态显示关联行?


 回到顶部
美女呀,离线,留言给我吧!
yangming
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/7 18:11:00 [只看该作者]

是的,比如说,当我放在张三这行时打开了窗口2,显示的是张三的关联行,但是如果我又想看李四的详细情况了,我移动到李四行时,窗口二现在还是原张三的信息,我只能是关了窗口2再打开才能看到李四的信息,所以我希望的是,我移到哪一行,窗口2也能显示出相关联的信息行来
[此贴子已经被作者于2009-5-7 18:14:10编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/5/7 18:14:00 [只看该作者]

在窗口1的DataList的CurrentChanged事件中加入代码:

If forms("窗口2").Opened '如果窗口2打开了 Then
    Dim dr As DataRow = e.Form.Controls("DataList1").Current '取得窗口1选择的员工行
    Forms("窗口2").Controls("DataList1").RowFilter = "[工号] = '" & dr("工号") & "'"
End If

 回到顶部
总数 16 1 2 下一页