Строковые значения с разделителями-запятыми от SQL Server до ListBox select

Я пробрался в Интернет, но не могу найти решение следующей проблемы.

У меня есть элемент управления ListBox, который заполняется списком значений из таблицы базы данных SQL Server в FormLoad.

Это позволяет пользователю выбирать несколько значений, и они могут быть отправлены в столбец базы данных SQL Server в виде значений, разделенных запятыми.

Проблема в том, что я хотел бы, чтобы пользователь разрешил редактирование этих отправленных значений из того же элемента управления ListBox.

Поэтому я хотел бы показать пользователю значения, которые извлекаются из базы данных как выбранные значения в ListBox и НЕ заполняют ListBox этими значениями, поскольку ListBox уже заполнен установленными значениями в FormLoad.

Я пытаюсь это, но это не работает -

foreach (ListItem li in lst_subspeciality.Items)
{
    foreach (string sqlitem in dt.Rows[0]["SubSpeciality"].ToString().Split(','))
    {
        if (li.Text == sqlitem.ToString())
        {
           li.Selected = true;
        }
    }
}

Буду признателен за любую оказанную помощь.

Благодарю.

1 ответ

Я не проверял это, но

List<string> myValues = dt.Rows[0]["SubSpeciality"].ToString().Split(',').ToList();

foreach (ListItem li in lst_subspeciality.Items)
{
        if (myValues.Contains(li.Text))
            li.Selected = true;
}
Другие вопросы по тегам