我想从数据库中添加一些数据到下拉列表中,并且没有重复的数据,所以我这样做了~
Dim ads As New Web.UI.WebControls.AccessDataSource
ads.DataFile = "~/app_data/board.mdb"
ads.SelectCommand = "SELECT DISTINCT [photo_species] FROM [phototable]"
Dim dv As DataView = ads.Select(New DataSourceSelectArguments)
For i = 0 To dv.Count - 1
DropDownList1.Items.Add(dv.Item(0).Row("photo_species"))
Next
但是当我运行代码时,它一次又一次地显示相同的数据
2条答案
按热度按时间0yg35tkg1#
更改此行中的0:
至i:
pcww981p2#
不清楚这是一个vb.net(不是vb 6),也不清楚这是一个网页(ASP.NET),还是一个桌面程序?
如果这是asp.net(基于网络),则应该可以:
首先,Web标记如下:
与大多数唐斯一样,有(可以有)两列。
“隐藏”值-在大多数情况下是数据库PK行ID。
然后显示值。(因此在上述值字段和文本字段中)。
DataValueField =隐藏列-从下拉列表返回的值DataTextField =数据表中的显示列(要显示)。
因此,我们要加载的代码如下:
我们现在得到这个:
如果在代码中我们需要测试/获取/查看/抓取所选的值呢?
然后使用此代码:
上面的代码允许您同时获取两列(隐藏列)和text/display列。
一般来说,还可以使用下拉列表的.Text属性来获取所选值。
这个也得到了值。
因此,上面的值将返回与DropDownList1.SelectedItem.Value相同的值