Foxtable(狐表)用户栏目专家坐堂 → 下拉窗口问题


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

主题:下拉窗口问题

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


加好友 发短信
等级:八尾狐 帖子:1934 积分:17667 威望:0 精华:0 注册:2014/7/29 19:09:00
下拉窗口问题  发帖心情 Post By:2021/12/27 11:41:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:下拉窗口.jpg
图片点击可在新窗口打开查看


弹出下拉窗口时,想根据每行不同的窗口表名显示不同的授权部门角色目录树,但发现下拉窗口第一次生成后,再换不同的行时都是一样的,
下拉窗口afterLoad代码如下:
Dim pr As Row = Tables("查阅范围设置_Table1").Current
If pr IsNot Nothing AndAlso pr.Isnull("winN") = False Then
    Dim tr4 As WinForm.TreeView = e.Form.Controls("TreeView1")  '所有部门角色
    Dim dr,dr2 As DataRow
    dr = DataTables("MoGroup").Find("WinName = '" & pr("winN") & "'")
    If dr IsNot Nothing Then
        Dim nms As String = dr("sqRole")
        '1---将有权查看表单的部门角色生成目录树
        If nms > "" Then
           tr4.Nodes.Clear()  '先清除
            Dim nds() As String = nms.Split(",")  '拆分每一组部门.角色为数组
            For i As Integer = 0 To nds.Length - 1
                Dim cnd() As String = nds(i).Split(".")  '拆分部门与角色
                If cnd(0) = "All" AndAlso cnd(1) = "All" Then   'All.All,增加All节点及其下从用户表中获取的所有角色节点
                    If tr4.Nodes.Contains(cnd(0)) = False Then
                        tr4.Nodes.Add(cnd(0))
                        For Each cdr As DataRow In dt.DataRows
                            If tr4.Nodes(cnd(0)).Nodes.Contains(cdr("RoleID")) = False Then
                                tr4.Nodes(cnd(0)).Nodes.Add(cdr("RoleID"),cdr("角色")) '添加所有角色及中文名称(后续All.All节点不再处理中文显示)
                            End If
                        Next
                    End If
              end if
            Next
         End If
    End If
End If
是什么原因?谢谢!

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111424 积分:567196 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/12/27 11:53:00 [只看该作者]

代码放到DropDownOpening事件

 回到顶部