Ну, это зависит от того, чего вы хотите добиться от выбранного элемента списка.
Есть несколько возможных способов, позвольте мне попытаться объяснить некоторые из них для вашей домашней работы.
Предположим,у вас есть таблица данных с двумя столбцами и их строками ...
ID Title
_________________________
1 First item's title
2 Second item's title
3 Third item's title
И вы связываете эту таблицу данных со своим списком как,
ListBox1.DisplayMember = "ID";
ListBox1.ValueMember = "Title";
Если пользователь выбирает второй элементиз списка.
Теперь, если вы хотите получить отображаемое значение (Заголовок) выбранного элемента, вы можете сделать
string displayValue = ListBox1.Text; // displayValue = Second item's title
ИЛИ даже это, чтобы получить те же результаты.
// displayValue = Second item's title
string displayValue = ListBox1.SelectedItem.ToString();
И чтобы получить значение элемента против выбранного элемента, вам нужно сделать
string selectedValue = ListBox1.SelectedValue; // selectedValue = 2
Теперь существуют ситуации, когда вы хотите позволить пользователю выбрать более одного элемента изсписок, так что вы затем установите
ListBox1.SelectionMode = SelectionMode.MultiSimple;
ИЛИ
ListBox1.SelectionMode = SelectionMode.MultiExtended;
Теперь предположим, если пользователь выбирает два элемента;второй и третий.
Таким образом, вы можете получить отображаемые значения, просто перебирая SelectedItems
string displayValues = string.Empty;
foreach (object selection in ListBox1.SelectedItems)
{
displayValues += selection.ToString() + ",";
}
// so displayValues = Second item's title, Third item's title,
И если вы хотите получить ID's
вместо Title's
, тогда...
Я также просматриваю его, выложу, если найдет.
Надеюсь, ваше понимание будет построено.
Удачи!