以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  登录窗口下拉用户名排序问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=170648)

--  作者:实话实说
--  发布时间:2021/8/3 12:08:00
--  登录窗口下拉用户名排序问题
登录窗口有一用户下拉列表,我想按_Sortkey排序,用户登录窗口的AfterLoad事件如下,提示错误
Dim cmd As New SQLCommand
Dim dt As DataTable
Dim cmb As WinForm.ComboBox = e.Form.Controls("UserName")
cmd.C
cmd.CommandText = "S ELECT DISTINCT Name From {Users} ORDER BY _Sortkey " 
dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
   cmb.Items.Add(dr("Name"))
Next

--  作者:cd_tdh
--  发布时间:2021/8/3 13:10:00
--  

为什么不用这个呢?GetComboListString

dt = cmd.ExecuteReader()
Dim cmb As WinForm.ComboBox = dt.GetComboListString("UserName","","_Identify")

[此贴子已经被作者于2021/8/3 13:14:38编辑过]

--  作者:实话实说
--  发布时间:2021/8/3 15:59:00
--  

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

--  作者:有点蓝
--  发布时间:2021/8/3 16:28:00
--  
t提示什么错误?

cmd.CommandText = "S ELECT Name,_Sortkey From {Users}

Dim cmb As WinForm.ComboBox = e.Form.Controls("UserName")
cmb.ComboList = dt.GetComboListString("Name","","_Identify")

--  作者:实话实说
--  发布时间:2021/8/3 17:26:00
--  

提示_Sortket或_identify有问题

红色行没问题

 

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim cmb As WinForm.ComboBox = e.Form.Controls("UserName")
cmb.ComboList = dt.GetComboListString("Name","","_Sortkey")
cmd.C
\'cmd.CommandText = "S ELECT DISTINCT Name From {Users}"
cmd.CommandText = "S ELECT Name From {Users} ORDER BY 序号"
\'cmd.CommandText = "S ELECT Name From {Users} ORDER BY _Sortkey"
dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
   cmb.Items.Add(dr("Name"))
Next


--  作者:有点蓝
--  发布时间:2021/8/3 17:29:00
--  
具体提示什么错误?
--  作者:实话实说
--  发布时间:2021/8/3 18:04:00
--  

 

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim cmb As WinForm.ComboBox = e.Form.Controls("UserName")
cmb.ComboList = dt.GetComboListString("Name","","_Sortkey")
cmd.C
cmd.CommandText = "S ELECT DISTINCT Name From {Users}"
\'cmd.CommandText = "S ELECT Name From {Users} ORDER BY 序号"
\'cmd.CommandText = "S ELECT Name From {Users} ORDER BY _Sortkey"
dt = cmd.ExecuteReader()

For Each dr As DataRow In dt.Datarows
   cmb.Items.Add(dr("Name"))
Next


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

 

如果用上面蓝色代码


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

--  作者:有点蓝
--  发布时间:2021/8/3 20:44:00
--  
要等sql执行完毕啊

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim cmb As WinForm.ComboBox = e.Form.Controls("UserName")
cmd.C
cmd.CommandText = "S ELECT Name,
_Sortkey From {Users}"

dt = cmd.ExecuteReader()

cmb.ComboList = dt.GetComboListString("Name","","_Sortkey")


--  作者:实话实说
--  发布时间:2021/8/4 16:41:00
--  

提示:无法找到_Sortkey,以下代码在窗口的AfterLoad事件

 

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim cmb As WinForm.ComboBox = e.Form.Controls("UserName")
cmd.C
cmd.CommandText = "S ELECT DISTINCT Name From {Users}"
\'cmd.CommandText = "S ELECT Name From {Users} ORDER BY 序号"
\'cmd.CommandText = "S ELECT Name From {Users} ORDER BY _Sortkey"
dt = cmd.ExecuteReader()
cmb.ComboList = dt.GetComboListString("Name","","_Sortkey")
For Each dr As DataRow In dt.Datarows
   cmb.Items.Add(dr("Name"))
Next


--  作者:有点蓝
--  发布时间:2021/8/4 16:43:00
--  
认真看8楼代码