以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]DropDownForm窗口命令  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56126)

--  作者:wumingrong1
--  发布时间:2014/8/29 17:57:00
--  [求助]DropDownForm窗口命令
我有一个录入窗口如下图:使用同一个DropDownForm窗口;第一行可以正常录入、第二行 ---  第六行 就没法录入了、我的命令该怎么改?

If e.Node.Level = 2 Then \'如果单击的是第二层节点
    Dim ps() As String = e.Node.FullPath.Split("\\")
    Dim tr As Row = Tables("机房设备端口应用表").Current
    Dim dr As DataRow = DataTables("机房板件端口表").Find("机房名称 = \'" & ps(0) & "\'And 设备名称型号 = \'" & ps(1) & "\'And 设备槽位端口 = \'" & ps(2) & "\'")
    If dr IsNot Nothing Then \'如果在行政区域表找到对应的行,则将此行的值写入客户表的当前行.
        

        Forms("业务维护录入窗口").Controls("机房名称1").Text = dr("机房名称")
        Forms("业务维护录入窗口").Controls("设备名称型号1").Text = dr("设备名称型号")
        Forms("业务维护录入窗口").Controls("设备槽位端口1").Text = dr("设备槽位端口")
        
        
        e.Form.DropDownBox.Value = dr("机房名称") \'这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.
    End If
    e.Form.DropDownBox.CloseDropdown()  \'关闭下拉目录树
End If


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

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


--  作者:有点甜
--  发布时间:2014/8/29 18:01:00
--  
If e.Node.Level = 2 Then \'如果单击的是第二层节点
    Dim ps() As String = e.Node.FullPath.Split("\\")
    Dim dr As DataRow = DataTables("机房板件端口表").Find("机房名称 = \'" & ps(0) & "\'And 设备名称型号 = \'" & ps(1) & "\'And 设备槽位端口 = \'" & ps(2) & "\'")
    If dr IsNot Nothing Then \'如果在行政区域表找到对应的行,则将此行的值写入客户表的当前行.
       
        Dim i As String = Right(e.Form.DropDownBox.Name, 1)
        Forms("业务维护录入窗口").Controls("机房名称" & i).Text = dr("机房名称")
        Forms("业务维护录入窗口").Controls("设备名称型号" & i).Text = dr("设备名称型号")
        Forms("业务维护录入窗口").Controls("设备槽位端口" & i).Text = dr("设备槽位端口")
       
       
        e.Form.DropDownBox.Value = dr("机房名称") \'这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.
    End If
    e.Form.DropDownBox.CloseDropdown()  \'关闭下拉目录树
End If

--  作者:wumingrong1
--  发布时间:2014/9/1 14:05:00
--  
如果在 \'板盘类型\'DropDownForm窗口的AfterLoad想实现列表项目来源于 “机房板盘端子台帐表”;
条件为:‘板盘类型1’的列表项目为筛选“机房板盘端子台帐表”的机房名称=\'业务维护录入窗口_机房名称1\'
       ‘板盘类型2’的列表项目为筛选“机房板盘端子台帐表”的机房名称=\'业务维护录入窗口_机房名称2\'
          。。。

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("机房板盘端子台帐表","板盘类型|机柜板盘端子名称","机房名称 = \'" & Forms("业务维护录入窗口").Controls("机房名称1") & "\'")

我的这个公式该怎么改?
[此贴子已经被作者于2014-9-1 14:15:22编辑过]

--  作者:有点甜
--  发布时间:2014/9/1 14:22:00
--  

DropDownOpening 事件

 

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim i As String = Right(e.Form.DropDownBox.Name, 1)
trv.BuildTree("机房板盘端子台帐表","板盘类型|机柜板盘端子名称","机房名称 = \'" & Forms("业务维护录入窗口").Controls("机房名称" & i) & "\'")


--  作者:wumingrong1
--  发布时间:2014/9/1 14:30:00
--  
点击第一个“板盘类型”时提示如下:

图片点击可在新窗口打开查看此主题相关图片如下:360截图20140901142915212.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2014-9-1 14:30:20编辑过]

--  作者:有点甜
--  发布时间:2014/9/1 14:32:00
--  

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim i As String = Right(e.Form.DropDownBox.Name, 1)
trv.BuildTree("机房板盘端子台帐表","板盘类型|机柜板盘端子名称","机房名称 = \'" & Forms("业务维护录入窗口").Controls("机房名称" & i).Text & "\'")


--  作者:有点甜
--  发布时间:2014/9/1 14:33:00
--  

 或者直接

 

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("机房板盘端子台帐表","板盘类型|机柜板盘端子名称","机房名称 = \'" & e.Form.DropDownBox.Value & "\'")