Помогите очистить значение Комбобокса

174
17 марта 2018, 14:55

Есть вот такое чудо:

void AddIntToCombobox(System.Windows.Forms.ComboBox f, int a) // f поступающий combobox, a поступающая переменная 
{
    if (!f.Items.Contains(a)) // проверяю если нету такого элемента
       f.Items.Add(a); // добавить
}

А вот как сделать так, если такой элемент в комбобоксе есть, а в int a; он не поступил то его из комбобокса удалить, то есть: Есть в комбобоксе вот такие строки или они остались от предыдущего запроса(1,2,3,4,5 ну и т.д) а в int a поступили вот такие строки (1,3,5) То нужно удалить из комбобокса 2 и 4 вот как это можно сделать, помогите пожалуйста)

void ss()
{
    AddStringToCombobox(comboBox1, 1); //первый параметр это какой комбобокс
    AddStringToCombobox(comboBox1, 3);// второй это какое значение
    AddStringToCombobox(comboBox1, 5);
}
Answer 1

Например, как то так

void AddIntToCombobox(ComboBox f, params int[] a) // f поступающий combobox, a поступающая переменная 
{
    foreach (var item in a)
        if (!f.Items.Contains(item)) // проверяю если нету такого элемента
            f.Items.Add(item); // добавить
    var comboItems = f.Items.OfType<int>().ToArray();
    foreach (var item in comboItems)
        if (!a.Contains(item)) // проверяю если нету такого элемента
            f.Items.Remove(item); // удалить
}

Вызвать можно так

var combo = new ComboBox();
AddIntToCombobox(combo, 1, 2, 3);

UPD

Можно заменить вот это

foreach (var i in g) { 
    AddIntToCombobox(comboBox1, i.Numbers); 
    AddIntToCombobox(comboBox1, i.Count); 
    AddIntToCombobox(comboBox1, i.Cell); 
    AddIntToCombobox(comboBox2, i.Long); 
    AddIntToCombobox(comboBox2, i.RAID); 
} 

на

AddIntToCombobox(comboBox1, g.SelectMany(x => new[] {x.Numbers, x.Count, x.Cell}).ToArray());
AddIntToCombobox(comboBox2, g.SelectMany(x => new[] {x.Long, x.RAID}).ToArray());
READ ALSO
Где ошибка в кастомной реализации MD5?

Где ошибка в кастомной реализации MD5?

Дана кастомная реализация MD5, найденная на просторах сети

146
Округление числа до десятков и сотен

Округление числа до десятков и сотен

Я не знаю как написать код который будет округлять до десятков и сотенНапример у меня есть 365 и надо что бы его округляло к 370 или есть 350 и надо...

213
Как сделать chaining для своего класса?

Как сделать chaining для своего класса?

Есть класс customArrayFunctions , метод chain работает как нужно, но функции повторяются, поэтому мне нужно чтобы после вызова chain брались функции из основного...

268
JQuery autocomplete

JQuery autocomplete

Первый раз работаю с autocomplete, запутался в хламНа сайте есть готовый код, который из БД тянет города согласно первых символов, после выбора...

220