Foxtable(狐表)用户栏目专家坐堂 → 关于组合框加载不同列数据


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

主题:关于组合框加载不同列数据

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/26 8:47:00 [显示全部帖子]

使用find查找得到行,然后
dim s as string = dr("第一列") & "|" & dr("第二列") & "|" ......
组合框.combolist = s

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/26 20:47:00 [显示全部帖子]

请上传实例测试

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/26 21:16:00 [显示全部帖子]

新建项目做个类似的功能。我们没有办法凭想象去解决这个问题

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/27 9:14:00 [显示全部帖子]

If e.DataCol.name ="注册电话掩码" Then
    If e.NewValue = "" Then
        systemready = False
        e.DataRow(e.DataCol.name.SubString(0,e.DataCol.name.length-4)) = ""
        systemready = True
    ElseIf e.newvalue.contains("*") Then
        Dim dr As DataRow = DataTables("客户资料表").Find("客户ID='" & e.DataRow("客户ID") & "'")
        If dr IsNot Nothing Then
            Dim dh As String
            For Each dc As DataCol In DataTables("客户资料表").DataCols
                If dc.Name.EndsWith("掩码") Then
                    If dr(dc.Name) = e.NewValue Then
                        dh = dr(dc.Name.Replace("掩码",""))
                        Exit For
                    End If
                End If
            Next
            If dh > "" Then
                Dim r_tele As New System.Text.RegularExpressions.Regex("^1[0-9]{10}$")
                If r_tele.IsMatch(dh) = False Then
                    msgbox("电话号码不正确")
                    e.cancel = True
                End If
                If e.Cancel = False Then
                    systemready = False
                    e.DataRow(e.DataCol.name.SubString(0,e.DataCol.name.length-2)) = dh
                    'e.NewValue = e.NewValue.SubString(0, 3) & "*****" & e.NewValue.SubString(8,3)
                    systemready = True
                End If
            Else
                e.Cancel = True
            End If
        Else
            e.Cancel = True
        End If
    Else
        msgbox("不能这样修改")
        e.cancel = True
    End If
End If

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/27 16:47:00 [显示全部帖子]

我测试没有问题

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/27 17:35:00 [显示全部帖子]

您到底知道自己在做什么吗?!代码逻辑本来就这样的好吗

文本框绑定的是掩码列,只能输入带掩码的号码

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/28 20:32:00 [显示全部帖子]

您是要输入完整电话,然后转换为带掩码的值?

那么文本框应该绑定注册电话列,然后在datacolchanged,把电话转换为掩码数据赋值给注册电话掩码列

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


加好友 发短信
等级:超级版主 帖子:110783 积分:563847 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/29 9:33:00 [显示全部帖子]

这样文本框就不要绑定列,在文本框valuechanged事件进行处理

 回到顶部