Коллекция элементов не может быть изменена при установке свойства datasource ошибка
У меня есть два окна формы
ошибка показывает, когда мне нужно передать данные из windows form2 в текстовое поле
для окна формы form1 поле со списком
Первая форма windows
нашел combobox внутри windows form1 и показываю данные в нем в событии загрузки формы
public DataTable ShowExceltwoLanguage() { OleDbConnection con = new OleDbConnection(connection); con.Open(); string str = "select MemberID,MemberNameAR + ' - ' + MemberNameEN as MemberName from [MemberAR$]"; OleDbCommand com = new OleDbCommand(); com = new OleDbCommand(str, con); OleDbDataAdapter oledbda = new OleDbDataAdapter(); oledbda = new OleDbDataAdapter(com); DataSet ds = new DataSet(); ds = new DataSet(); oledbda.Fill(ds, "[MemberAR$]"); con.Close(); DataTable dt = new DataTable(); dt = ds.Tables["[MemberAR$]"]; return dt; }
в случае загрузки windows form1 я пишу следующее
QrClasses qrc = new QrClasses(); DataTable dt = qrc.ShowExceltwoLanguage(); comboBox4.DataSource = dt; comboBox4.DisplayMember = "MemberName"; comboBox4.ValueMember = "MemberID";
Вторую форму
вот ошибка
Коллекция элементов не может быть изменена, если свойство DataSource установлено show
в событие click кнопки button1 на форме Form2
if (!string.IsNullOrWhiteSpace(textBox1.Text)) { var cb = ((Form1)Owner).comboBox4; var index = cb.FindString(textBox1.Text); if (index == -1) { cb.Items.Add(textBox1.Text);// in this line Additional information: Items collection cannot be modified when the DataSource property is set. index = cb.FindString(textBox1.Text); if (index > -1) { cb.SelectedIndex = index; Close(); } } else { cb.SelectedIndex = index; } }
так вот как это решить, если это возможно ?
Что я уже пробовал:
Items collection cannot be modified when the DataSource property is set Error
[no name]
Это действительно помогает, когда вы действительно читаете сообщение об ошибке и логически применяете ошибку к строке кода, где она возникает.
ahmed_sa
Я получаю ошибку при попытке коллекции элементов не может быть изменен когда свойство datasource установлено ошибка если это возможно может ли кто нибудь помочь мне
ZurdoDev
Да, ошибка объясняет, что происходит. Элемент управления привязан к источнику данных, и вы пытаетесь изменить элементы непосредственно. Он говорит вам, что вы не можете этого сделать.
[no name]
"может ли кто-нибудь мне помочь", судя по всему, не судя по всем принятым ответам, которые вы имеете в своих "вопросах"...
Так в чем же здесь проблема? Вы не понимаете сообщение об ошибке? Это совершенно ясно. Как человек, который утверждает, что он из США, у вас не должно быть никаких проблем с доступом к google и выяснением того, что означает сообщение об ошибке. У вас есть combobox, где задано свойство datasource, и вы пытаетесь изменить коллекцию. Либо отмените установку источника данных перед изменением коллекции, либо измените коллекцию перед установкой источника данных. Точно так же, как говорится в сообщении об ошибке
Karthik_Mahalingam
вы зацикливаете коллекцию ?