|
ComboBox - индекс и текст
Вопрос:
У меня есть выборка из базы где имеется ID записи и ее текстовка,
я хочу забить эту инфу в Combobox. В Combobox должен отображаться только текст, а при выборе я хочу знать ее ID.
Как это сделать?
Ответ:
Combobox хранит в себе object следовательно в его элементах можно хранить любой объект,
но чтобы он отображался в списке необходимо чтобы у этого объекта был метод ToString.
Данную задачу можно решить следующим образом:
1. Создаем класс, который будет хранить ID и текстовку
2. Перегружаем метод ToString, чтобы он возвращал текстовку
class Addon
{
int index;
string text;
public Addon(int _ind,string _txt)
{
this.index = _ind;
this.text = _txt;
}
public override string ToString()
{
return this.text;
}
public int INDEX
{
get
{
return this.index;
}
}
}
|
3. Добавляем элементы списка через наш класс
for (int i = 0; i < 100; i++)
comboBox1.Items.Add(new Addon(i,"Строка "+i));
|
4. Извлечение ID и текста
MessageBox.Show(((Addon)comboBox1.SelectedItem).INDEX+" "+comboBox1.SelectedItem.ToString());
|

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