以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  点选下拉列表选项后,其他控件未定现自动录入数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=172848)

--  作者:采菊东篱下
--  发布时间:2021/11/3 16:30:00
--  点选下拉列表选项后,其他控件未定现自动录入数据

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

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20211103161718.png
图片点击可在新窗口打开查看
我想实现点选窗口中的ComboBox1控件,TextBox1、TextBox2控件直接输入最小编号和对应的姓名
我在SelectedIndexChanged事件中这样写,TextBox1、TextBox2没反应。
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT 棋赛名称,比赛已结束 Fr om {基本信息} WHERE [比赛已结束] = False Or [比赛已结束] Is null"
dt = cmd.ExecuteReader
e.Sender.Combolist = dt.SQLGetComboListString("棋赛名称","[比赛已结束] = False Or [比赛已结束] Is null")
Dim val As String = e.Sender.SelectedItem
If val IsNot Nothing Then
    Dim Min0 As String = DataTables("基本信息").SQLCompute("Min(编号)","[棋赛名称] = \'" & val & "\'")
    Messagebox.show(Min0)
    Dim dr As DataRow = DataTables("基本信息").SQLFind("[棋赛名称] = \'" & val & "\' And [编号] = \'" & Min0 & "\'")
    e.Form.Controls("TextBox1").Value = dr("编号")
    e.Form.Controls("TextBox2").Value = dr("姓名")
End If

--  作者:有点蓝
--  发布时间:2021/11/3 16:35:00
--  
去掉SelectedIndexChanged事件

到valuechanged事件处理
if e.sender.text > "" then
dim val as string = e.sender.text 
    Dim Min0 As String = DataTables("基本信息").SQLCompute("Min(编号)","[棋赛名称] = \'" & val & "\'")
    Messagebox.show("[棋赛名称] = \'" & val & "\' And [编号] = \'" & Min0 & "\'")
    Dim dr As DataRow = DataTables("基本信息").SQLFind("[棋赛名称] = \'" & val & "\' And [编号] = \'" & Min0 & "\'")
if dr isnot nothing then
    e.Form.Controls("TextBox1").Value = dr("编号")
    e.Form.Controls("TextBox2").Value = dr("姓名")
else
msgbox("没有符合条件的数据")
end if
end if

--  作者:采菊东篱下
--  发布时间:2021/11/3 16:53:00
--  
谢谢,可以了,还有,我想让ComboBox1控件中的文字自动换行,如何实现?
--  作者:有点蓝
--  发布时间:2021/11/3 17:29:00
--  
没有办法
--  作者:采菊东篱下
--  发布时间:2021/11/3 17:38:00
--  
哪名称过长,怎样实现分行显示?只能用文本控件吗?但用文本控件又怕名称有误。
--  作者:有点蓝
--  发布时间:2021/11/3 17:39:00
--  
使用下拉窗口
--  作者:采菊东篱下
--  发布时间:2021/11/3 18:00:00
--  
用下拉目录树?不是我要的效果!
--  作者:有点蓝
--  发布时间:2021/11/4 8:28:00
--  
http://www.foxtable.com/webhelp/topics/2465.htm
--  作者:采菊东篱下
--  发布时间:2021/11/4 14:38:00
--  
不要下拉窗口形式,我在下面加一个文本控件作棋赛副名:
这样写TextBox3没有赋值
If e.sender.text > "" Then
    Dim val As String = e.sender.text
    Dim Min0 As String = DataTables("基本信息").SQLCompute("Min(编号)","[棋赛名称] = \'" & val & "\'")
    Dim dr As DataRow = DataTables("基本信息").SQLFind("[棋赛名称] = \'" & val & "\' And [编号] = \'" & Min0 & "\'")
    If dr IsNot Nothing And dr.IsNull("棋赛副名") Then
        e.Form.Controls("TextBox3").Value = Nothing
        e.Form.Controls("TextBox1").Value = dr("编号")
        e.Form.Controls("TextBox2").Value = dr("姓名")
    ElseIf dr IsNot Nothing And dr.IsNull("棋赛副名") = False Then
        e.Form.Controls("TextBox3").Value = dr("棋赛副名")
        e.Form.Controls("TextBox1").Value = dr("编号")
        e.Form.Controls("TextBox2").Value = dr("姓名")
    Else
        msgbox("没有符合条件的数据")
    End If
End If

--  作者:有点蓝
--  发布时间:2021/11/4 15:10:00
--  
   Dim dr As DataRow = DataTables("基本信息").SQLFind("[棋赛名称] = \'" & val & "\' And [编号] = \'" & Min0 & "\'")
    If dr IsNot Nothing Then
        e.Form.Controls("TextBox1").text = dr("编号")
        e.Form.Controls("TextBox2").text = dr("姓名")
        e.Form.Controls("TextBox3").text = dr("棋赛副名")
    Else
        msgbox("没有符合条件的数据")
    End If