应该是这样
DropDownList.DataBind()后
DropDownList.SelectIndex = -1;
foreach( ListItem item in DropDownList.Items )
{
if( item.Text == "c" )
{
item.Selected = true;
break;
}
}
DropDownList.DataBind()后
DropDownList.SelectIndex = -1;
foreach( ListItem item in DropDownList.Items )
{
if( item.Text == "c" )
{
item.Selected = true;
break;
}
}
DropDownList.SelectIndex = -1;
DropDownList.items.findbytext("c").select();
用循环,读到一个个值,
如果值和标识相等,则设为selected
DropDownList.SelectedIndex = DropDownList.Items.IndexOf(DropDownList.Items.FindByValue("c"));
这个好像不对
1
a
b
1
d
......
'绑定
dropname.DataTextField = "name"
dropname.DataBind()
dtrname.Close()
'从数据库中取出我选中的值
......
Dim strname As string
...
strname="c"
dropname.SelectedIndex = -1
dropname.SelectedIndex = dropname.Items.IndexOf(dropname.Items.FindByText(strUser))
IF ...
BindData
End If
End sub
Sub BindDataList Dim dtrname As SqlDataReader
Dim dtrinfo As SqlDataReader
Dim cmdSelect As SqlCommand
Dim cmdSelect1 As SqlCommand
'取客户信息
cmdSelect = New SqlCommand( "Select advertiserid,name From ad_advertiser Order by advertiserid", conPubs )
conPubs.Open()
dtrname = cmdSelect.ExecuteReader()
dropname.DataSource = dtrname
dropname.DataValueField = "advertiserid"
dropname.DataTextField = "name"
dropname.DataBind() dtrname.Close()
'取选中用户的信息
Dim strUser,strimp As string
Dim cmdUser As SqlCommand
Dim dtrUser As SqlDataReader
cmdUser = New SqlCommand("SELECT dbo.ad_advertiser.name, dbo.ad_rotator.impressions FROM dbo.ad_advertiser INNER JOIN dbo.ad_rotator ON dbo.ad_advertiser.advertiserid = dbo.ad_rotator.advertiserid WHERE (dbo.ad_rotator.adid = '" & stradid &"')",conPubs)
dtrUser = cmdUser.ExecuteReader
while dtrUser.Read()
strUser = dtrUser("name")
strimp = dtrUser("impressions")
End while
dtrUser.Close() dropname.SelectedIndex = -1
dropname.SelectedIndex = dropname.Items.IndexOf(dropname.Items.FindByText(strUser))
End Sub
取选中用户的信息中查到的数据不止一条吗?
为什么用while
这样,生效的是最后一条呢其次,你取客户信息
中得到的数据有几条
strUser = dtrUser("name")
strimp = dtrUser("impressions")
End while->if dtrUser.Read() then
strUser = dtrUser("name")
strimp = dtrUser("impressions")
Endif