Foxtable(狐表)用户栏目专家坐堂 → [求助]求几个关于下拉窗口与多值字段的问题?


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

主题:[求助]求几个关于下拉窗口与多值字段的问题?

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/27 20:23:00 [显示全部帖子]

Dim t As Table = Tables("筐架表")
Dim str As String = ""
Dim v1 = val(e.Form.controls("textbox1").text)
If v1 > 0 Then
    t.Current("铁箱") = v1
    str &= v1 & "铁箱+"
Else
    t.Current("铁箱") = Nothing
End If
Dim v3 = val(e.Form.controls("textbox3").text)
If v3 >0 Then
    t.Current("袋子") = v3
    str &= v3 & "袋子+"
Else
t.Current("袋子") = Nothing
End If
e.Form.DropDownBox.value = str.trim("+")

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/28 10:01:00 [显示全部帖子]

下拉窗口不能绑定控件,全部手工赋值

Dim t As Table = Tables("筐架表")

Dim str As String = ""
Dim v1 = val(e.Form.controls("textbox1").text)
If v1 > 0 Then
'    t.Current("铁箱") = v1
    str &= v1 & "铁箱"
    t.Current("铁箱") = v1
Else
    t.Current("铁箱") = Nothing
End If

Dim v2 = val(e.Form.controls("textbox2").text)
If v2 > 0 Then
'    t.Current("铁筐") = v2
    str &= v2 & "铁筐"
    t.Current("铁筐") = v2
Else
    t.Current("铁筐") = Nothing
End If

Dim v3 = val(e.Form.controls("textbox3").text)
If v3 >0 Then
'    t.Current("袋子") = v3
    str &= v3 & "袋子"
    t.Current("袋子") = v3
Else
t.Current("袋子") = Nothing
End If

Dim v4 = val(e.Form.controls("textbox4").text)
If v4 >0 Then
'    t.Current("托盘") = v4
    str &= v4 & "托盘"
    t.Current("托盘") = v4
Else
t.Current("托盘") = Nothing
End If

e.Form.DropDownBox.value = str.trim("")

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/28 10:43:00 [显示全部帖子]

DropDownOpening事件

Dim str As String = e.Form.DropDownBox.Value
Dim p2 As String = "(铁箱|袋子|铁筐|托盘)"
Dim r As New System.Text.RegularExpressions.Regex(p2)
Dim arr() As String = r.Split(str)
e.Form.Controls("TextBox1").text = ""
e.Form.Controls("TextBox2").text = ""
e.Form.Controls("TextBox3").text = ""
e.Form.Controls("TextBox4").text = ""
For i As Integer = 0 To arr.Length - 2 Step 2
    If arr(i+1) = "铁箱" Then
        e.Form.Controls("TextBox1").text =  arr(i)
    ElseIf arr(i+1) = "铁筐" Then
        e.Form.Controls("TextBox2").text =  arr(i)
    ElseIf arr(i+1) = "袋子" Then
        e.Form.Controls("TextBox3").text =  arr(i)
    ElseIf arr(i+1) = "托盘" Then
        e.Form.Controls("TextBox4").text =  arr(i)
    End If
Next

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/28 10:54:00 [显示全部帖子]

e.Form.Controls("TextBox1").text = ""
e.Form.Controls("TextBox2").text = ""
e.Form.Controls("TextBox3").text = ""
e.Form.Controls("TextBox4").text = ""
Dim str As String = e.Form.DropDownBox.Value
If str = "" Then Return 
Dim p2 As String = "(铁箱|袋子|铁筐|托盘)"
Dim r As New System.Text.RegularExpressions.Regex(p2)
Dim arr() As String = r.Split(str)
For i As Integer = 0 To arr.Length - 2 Step 2
    If arr(i+1) = "铁箱" Then
        e.Form.Controls("TextBox1").text =  arr(i)
    ElseIf arr(i+1) = "铁筐" Then
        e.Form.Controls("TextBox2").text =  arr(i)
    ElseIf arr(i+1) = "袋子" Then
        e.Form.Controls("TextBox3").text =  arr(i)
    ElseIf arr(i+1) = "托盘" Then
        e.Form.Controls("TextBox4").text =  arr(i)
    End If
Next

 回到顶部