Foxtable(狐表)用户栏目专家坐堂 → [求助]下拉列表的疑问


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

主题:[求助]下拉列表的疑问

帅哥哟,离线,有人找我吗?
qq121454970
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9011 威望:0 精华:3 注册:2012/4/22 18:06:00
[求助]下拉列表的疑问  发帖心情 Post By:2012/11/5 23:45:00 [只看该作者]

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim lst As WinForm.ListBox = e.Form.Controls("ListBox1")
cmd.C
cmd.CommandText = "SELECT DISTINCT Name From {Users}"  
dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
    lst.Items.Add(dr("Name"))
Next
If Lst.Items.Count > 0 Then
    lst.SelectedIndex = 0

End If

 

 

‘为什么将Users其他的名称就不行呢?其他表和Users表都是属于“数据源”中的外部表。试了几个外部表都不行,只有Users 可以,什么情况?

[此贴子已经被作者于2012-11-5 23:46:29编辑过]

 回到顶部
美女呀,离线,留言给我吧!
38585830
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1782 威望:0 精华:1 注册:2012/8/20 14:23:00
  发帖心情 Post By:2012/11/5 23:48:00 [只看该作者]

我也想了解 估计这个点了等明天把

 


 回到顶部
帅哥哟,离线,有人找我吗?
sloyy
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2193 积分:13908 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2012/11/6 0:48:00 [只看该作者]

其他表有 name 吗?

 回到顶部
帅哥哟,离线,有人找我吗?
sgs
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:365 积分:2693 威望:0 精华:1 注册:2011/11/25 7:55:00
  发帖心情 Post By:2012/11/6 8:06:00 [只看该作者]

需要确定其他表是否有name字段

另外可以在dt = cmd.ExecuteReader()
后面加个messagebox.show(dt.datarows.count)看看有几个符合条件的行,调试一下

 


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/11/6 8:13:00 [只看该作者]

sgs说得对,不会不可以的,要么表名错了,要么列名错了,要么本就没有数据


 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9011 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/11/6 8:32:00 [只看该作者]

说实话,我也觉得奇怪,我在用其他外部表的时候(对应的列也会换的),每次启用都要报警。下面这段代码跟上面代码是一摸一样的,只不过是换了个表名和列名。外部表也是有这个数据表和数据列的。。。。报警的内容好像是,缺少引用(昨天在家里弄,今天在公司,忘记具体的报警内容了)
Dim cmd As New SQLCommand
Dim dt As DataTable
Dim lst As WinForm.ListBox = e.Form.Controls("ListBox1")
cmd.C
cmd.CommandText = "SELECT DISTINCT Name From {基本资料}"
   dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
    lst.Items.Add(dr("商品类别"))
Next
If Lst.Items.Count > 0 Then
    lst.SelectedIndex = 0

End If
[此贴子已经被作者于2012-11-6 8:33:55编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/6 8:41:00 [只看该作者]

以下是引用qq121454970在2012-11-6 8:32:00的发言:
说实话,我也觉得奇怪,我在用其他外部表的时候(对应的列也会换的),每次启用都要报警。下面这段代码跟上面代码是一摸一样的,只不过是换了个表名和列名。外部表也是有这个数据表和数据列的。。。。报警的内容好像是,缺少引用(昨天在家里弄,今天在公司,忘记具体的报警内容了)
Dim cmd As New SQLCommand
Dim dt As DataTable
Dim lst As WinForm.ListBox = e.Form.Controls("ListBox1")
cmd.C
cmd.CommandText = "SELECT DISTINCT Name From {基本资料}"
   dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
    lst.Items.Add(dr("商品类别"))
Next
If Lst.Items.Count > 0 Then
    lst.SelectedIndex = 0

End If
[此贴子已经被作者于2012-11-6 8:33:55编辑过]

楼主,你只是取一列 name,你何来的 商品类别?

 回到顶部
帅哥哟,离线,有人找我吗?
qq121454970
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:880 积分:9011 威望:0 精华:3 注册:2012/4/22 18:06:00
  发帖心情 Post By:2012/11/6 8:43:00 [只看该作者]

列名称就是" 商品类别 " 呢图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/6 8:45:00 [只看该作者]

以下是引用qq121454970在2012-11-6 8:43:00的发言:
列名称就是" 商品类别 " 呢图片点击可在新窗口打开查看


cmd.CommandText = "SELECT DISTINCT Name From {基本资料}"
dt = cmd.ExecuteReader()

这两句代码,dt只有一列name


 回到顶部
帅哥哟,离线,有人找我吗?
lyq
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:360 积分:2794 威望:0 精华:0 注册:2010/4/30 18:38:00
  发帖心情 Post By:2012/11/6 8:49:00 [只看该作者]

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim lst As WinForm.ListBox = e.Form.Controls("ListBox1")
cmd.C
cmd.CommandText = "SELECT DISTINCT 商品类别 From {基本资料}"
   dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
    lst.Items.Add(dr("商品类别"))
Next
If Lst.Items.Count > 0 Then
    lst.SelectedIndex = 0

End If

 回到顶部
总数 11 1 2 下一页