BindingList и несколько combobox

104
08 ноября 2019, 17:10

Подключаю bindingList список combobox. Рабочий код:

BindingList<Discipline> source = new BindingList<Discipline>(){};           
source.Add(new Discipline(methods.resultSelect.ResultData.Rows[i].ItemArray[4].ToString()                 
));             
combobox1.DisplayMember="short_name";
combobox1.ValueMember="cod_discipline";
combobox1.DataSource=source;
combobox1.SelectedItem=null;

Проблема в том, что если я этот список привязываю к 2 и более combobox, и начинаю изменять один из них, то соответственно меняется значение, отображаемое во всех combobox. Каким образом грамотно привязать список например к 10 combobox, чтобы значения не влияли друг на друга?

Answer 1

Решено добавлением этой строки перед привязкой:

 combobox1.BindingContext = new BindingContext();
 combobox1.DataSource=source;
Answer 2

И хоть вы нашли сами решение, я бы предложил использовать для каждого комбобокса отдельный BindingSource.

BindingSource bs1 = new BindingSource();
BindingSource bs2 = new BindingSource();
bs1.DataSource = bindigList;
bs2.DataSource = bindigList;
_comboBox1.DataSource = bs1;
_comboBox2.DataSource = bs2;

BindingSource удобен тем, что в нем есть свойство Current -текущий выбранный элемент, и есть методы для движения по коллекции MoveFirst(), MoveNext() и т.д.

READ ALSO
&ldquo;Неверно задано имя папки&rdquo; при запуске батника для регистрации DLL

“Неверно задано имя папки” при запуске батника для регистрации DLL

Задача запустить батник для регистрации DLL, на компе под админом все работаетНо если запустить на другом компе под пользователем пишет "Неверно...

110
Репликация записей в EF ASP.NET Core

Репликация записей в EF ASP.NET Core

Настроено подключение к базе MsSQL с помощью EF на ASpNET Core не ниже 2

117
EF Core. Удаление зависимой записи

EF Core. Удаление зависимой записи

Всем приветИмееются 2 таблицы

139
Показ страниц пагинации

Показ страниц пагинации

Есть у меня код, который выводит пагинацию на странице:

115