|
Combobox как хранение справочника
Элемент управления Combobox является списочным контролом и позволяет делать выбор из набора данных, но как правило одного текста бывает не достаточно. Что тогда делать?
Сегодня мы расскажем как можно заставить Combobox хранить не только текст записи, но еще и ID данной записи. Это может быть полезно при выборе справочника из базы данных
Итак добавим на форму комбобокс и кнопку

Так как Items в combobox хранит тип object то мы этим и воспользуемся
Создадим дополнительный класс, который будет хранить все необходимые нам данные
public class spr
{
int _id;
string _name;
public spr(int id, string name)
{
this._id = id;
this._name = name;
}
public string Name
{
get
{
return this._name;
}
}
public int Id
{
get
{
return this._id;
}
}
}
|
Теперь чтобы наши данные отображались в комбобоксе нормально нам надо перегрузить метод ToString() в нашем классе и вписать в него то что мы хотели бы видеть в combobox
public override string ToString()
{
return this._name;
}
|
Ну теперь создаем объекты нашего класса и добавляем их в Combobox
comboBox1.Items.Add(new spr(1, "Ваня"));
comboBox1.Items.Add(new spr(2, "Вася"));
comboBox1.Items.Add(new spr(3, "Петя"));
comboBox1.Items.Add(new spr(4, "Гоша"));
|

Теперь давайте попробуем получить ID человека, которого мы выбрали
Соответственно потребуется приведение типов object в наш spr
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show( ((spr)comboBox1.SelectedItem).Id.ToString() ) ;
}
|
Ну вот и все, смотрим

Предыдущая стр.   
Оглавление   
Следующая стр.
Средняя оценка:     (0 - 0 голосов) Для оценки необходимо зарегистрироваться
Только зарегистрировавшиеся пользователи могут оставлять комментарии
|
|