Есть ли более простой способ сделать это?

Я перебираю список, и мне нужно получить то же значение, которое вы получите, если бы вы сделали .selectvalue, но без выбора строки. Вот как я это делаю сейчас, и это кажется глупым.

    For intCtr = 0 To lstUserRoleAll.Items.Count -1 
        lstUserRoleAll.SelectedIndex = intCtr
        InsertUserRoles(lstUserRoleAll.SelectedValue)
    Next

Я читал, что lstUserRoleAll.Items(intCtr).value должно работать, но ценность не является частью этого. Кроме того, lstUserRoleAll.Items(intCtr).tostring получает мне текст «System.Data.DataRowView».

Конечно, есть лучший способ сделать это.

enter image description here

Вот код, который я использую для добавления строк:

        Dim rsSelectedGroups As DataTable
        strSQL = "SELECT UID, Name "
        [Rest of query]
        rsSelectedGroups = DataAccess.GetDataTable(strSQL)
        lstUserRoleCurrent.DataSource = rsSelectedGroups
        lstUserRoleCurrent.ValueMember = "UID"
        lstUserRoleCurrent.DisplayMember = "Name"

0
задан Doug Sholly 27 February 2019 в 16:44
поделиться

1 ответ

Поскольку я заполнил список списком данных, работает следующий код. Я не понимал, что это то, что возвращалось.

    For intCtr = 0 To lstUserRoleAll.Items.Count
        InsertUserRoles(lstUserRoleAll.Items(intCtr).Item("UID"))
    Next
0
ответ дан Doug Sholly 27 February 2019 в 16:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: