以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [原创] 代码设置 ComboBox下拉框 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188242) |
-- 作者:瑞峰 -- 发布时间:2023/9/10 16:10:00 -- [原创] 代码设置 ComboBox下拉框 如何设置 cmb.DataSource = "dt.name" 这段。 dt.=name 是空白,直接使用dt 又不行,必须要一个string Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.Com mandText = "SELE CT UserID,UserName From {st_user}" dt = cmd.ExecuteReader dt.load \'msgbox(dt.name) Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") cmb.DisplayMember = "UserName" \'设置显示列 cmb.ValueMember = "Userid" \'设置取值列 cmb.DataSource = "dt.name" \'表项目来自于客户表 |
-- 作者:有点蓝 -- 发布时间:2023/9/10 21:26:00 -- cmb.DataSource只能绑定现有的数据表,无法绑定临时表 |
-- 作者:有点蓝 -- 发布时间:2023/9/10 21:27:00 -- 如果要使用不同取值的显示值建议使用下拉组合框:http://www.foxtable.com/webhelp/topics/2098.htm |
-- 作者:瑞峰 -- 发布时间:2023/9/11 11:48:00 -- 谢谢,加为外部表 就可以使用了。 但输入UserName,Userid的任何记录,都不能自动填充,必须自己完全输入 并且DataSort也没有效果 Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") cmb.DisplayMember = "UserName" \'设置显示列 cmb.ValueMember = "Userid" \'设置取值列 cmb.DataSort = "UserName" cmb.DataSource = "st_user_profile" \'表项目来自于客户表 cmb.AutoComplete = True [此贴子已经被作者于2023/9/11 11:48:37编辑过]
|
-- 作者:有点蓝 -- 发布时间:2023/9/11 12:05:00 -- 调换下位置 Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") cmb.AutoComplete = True cmb.DisplayMember = "UserName" \'设置显示列 cmb.ValueMember = "Userid" \'设置取值列 cmb.DataSort = "UserName" cmb.DataSource = "st_user_profile" \'表项目来自于客户表 |
-- 作者:瑞峰 -- 发布时间:2023/9/11 12:55:00 -- Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") cmb.AutoComplete = True cmb.DataSort = "UserName" cmb.DisplayMember = "UserName" \'设置显示列 cmb.ValueMember = "Userid" \'设置取值列 cmb.DataSource = "st_user_profile" \'表项目来自于客户表 DataSort也没有效果,我换成Userid 也没有用 |
-- 作者:有点蓝 -- 发布时间:2023/9/11 13:31:00 -- DataSort属性已经没有用了。如果又要显示列,又要排序的话,建议使用下拉窗口+drawcell处理吧 |