Выпадающий список получает идентификатор таблицы выбранного элемента, а не идентификатор раскрывающегося списка

У меня есть выпадающий список, заполненный базой данных, и мне нужно получить "Id" таблицы клиентов для выбранного имени, но вместо этого я получаю selectedIndex выпадающего списка, который не соответствует таблице;

Это заполняет выпадающий список с 4 именами в алфавитном порядке по фамилии, поэтому Мико Алкот стоит первым, а выпадающий список дает Мико selectedIndex, равный "1", но мне нужен идентификатор таблицы клиентов, равный "4". Как мне это получить? Я использую dropdownlist.SelectedIndex.ToStrgin(), и он дает мне выбранный индекс раскрывающегося списка, а не идентификатор таблицы, соответствующий имени.

Customer Table          GenericAttribute Table             

Id     Username             EntityId     Key     Value
1        foo                    1       fname    John
2        bar                    1       lname     Doe
3        flip                   2       fname    Greg
4        flop                   2       lname    Zowiski
                                3       fname    Paula
                                3       lname    Lindhurst
                                4       fname    Miko
                                4       lname    Alcot

 Dim Adapter9 As New SqlDataAdapter("SELECT [firstname] + ' ' + [lastname] As Name, Id, UserName From (Select a.Id, a.UserName, b.[key], b.[Value] From Customer a INNER JOIN GenericAttribute b ON a.Id = b.EntityId Where UserName IS NOT NULL) org PIVOT (MAX([Value]) For [Key] In ([firstname], [lastname])) pvt Order by [lastname] ASC", "Data Source=myDataSource")
    Dim Dataset9 As New DataSet
    Adapter9.Fill(Dataset9, "Customer")
    ddlUsers.DataSource = Dataset9
    ddlUsers.DataTextField = "Name"
    ddlUsers.DataValueField = "Id"
    ddlUsers.DataBind()
    ddlUsers.Items.Insert(0, New ListItem("--Select User--", "0"))

2 ответа

Решение

Из комментариев

в selected index changed evenдобавить следующий код ddlUsers.selectedValue и проверьте еще раз

Вы можете использовать событие SelectedIndexChanged для проверки свойства ddlUsers.SelectedValue.

Другие вопросы по тегам