#c# #winforms
#c# #winforms
Вопрос:
Я просто играл со значением поля со списком и пробовал что-то новое. Я просто хотел знать, как мне следует удалить или скрыть уже выбранное значение поля со списком при следующем использовании этого поля со списком. Я имею в виду, что после того, как я выбрал значение из поля со списком, я не смогу снова увидеть это выбранное значение при следующем нажатии на поле со списком. У меня есть следующие значения в поле со списком A
List<string> comboList = new List<string>();
comboList .Add("--Please Select--");
comboList .Add("ABC");
comboList .Add("DEF");
comboList .Add("GHI");
comboList .Add("JKL");
comboList .Add("MNO");
cmbNewComboBox.DataSource = comboList.DeepCopy();
если я выберу значение «ABC» из cmbNewComboBox и нажму ok, то я больше не получу это значение в этом окне со списком. т. Е. значениями, которые будут отображаться в окне со списком, будут только «DEF, GHI, JKL, MNO», НО НЕ «ABC».
Заранее спасибо
Ответ №1:
if(cmbNewComboBox.SelectedIndex != -1)
comboList.Remove(cb01.SelectedItem.ToString());
Комментарии:
1. Тогда вы делаете что-то неправильно. Элемент управления ComboBox предоставляет свойство «Удалить».
2. Есть ли у вас эта справочная система. Коллекции. Универсальный?
Ответ №2:
попробуйте это
private void combobox1_SelectedValueChanged(object sender, EventArgs e)
{
int iIndex;
if (int.tryParse(combobox1.Tag, out iIndex))
{
if (iIndex > -1)
((List<string>)combobox1.DataSource).RemoveAt(iIndex);
}
combobox1.Tag = combobox1.SelectedIndex;
}