2013-09-27 3 views
0

Я получил это сообщение об ошибке:SplitContainer ошибка

Collection is read only. 
at System.Windows.Forms.SplitContainer.SplitContainerTypedControlCollection.SetChildIndexInternal(Control child, Int32 newIndex) 
at System.Windows.Forms.Control.ControlCollection.SetChildIndex(Control child, Int32 newIndex) 
at System.Windows.Forms.Control.UpdateChildControlIndex(Control ctl) 
at System.Windows.Forms.Control.WmWindowPosChanged(Message& m) 
at System.Windows.Forms.Control.WndProc(Message& m) 
at System.Windows.Forms.ScrollableControl.WndProc(Message& m) 
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 

Я понятия не имею, что это такое, и поиск только что дал мне один пост без MSDN решения. Есть идеи? Что это за исключение вообще, я, вероятно, найду способ исправить это, если найду какое-то общее описание, как это может произойти?

+0

показать свой код? –

+0

Это отчет об ошибке. Код имеет более 10.000 строк, и это не приводит к какой-либо конкретной части. Итак, у кого-нибудь есть идея, почему это может произойти вообще? –

+1

Ошибка указывает, что вы пытаетесь назначить или удалить элементы из коллекции, где такая операция не разрешена. Вероятно, это будет «IEnumberable» или похожий интерфейс для чтения. – Kami

ответ

1

Где-то в вашем коде, вы пытаетесь удалить внутренние панели из SplitContainer управления

что-то вроде этого воспроизводит ошибку:

splitContainer1.Controls.RemoveAt(0); 

Вы должны будете искать в вашем коде, где вы пытаясь удалить или удалить дочерние элементы управления. Может быть легко рекурсивным методом.

+0

У меня есть FlowLayoutPanel внутри одного контейнера SplitContainer. У него есть некоторые средства управления. Но это не должно считаться, верно? Я дважды проверю, но у самого SplitContainer нет никакого удаления его элементов управления первого ребенка ... –

+0

@ IvanIčin SplitContainer имеет свойство Controls, скрытое атрибутами от дизайнера и кода, но оно есть. Вам придется опубликовать код, который вызывает ошибку для нас. – LarsTech

+0

Я знаю это, я просто говорю, что нет splitContainer.Controls.Remove ... Не splitContainer.Panel1.Controls.Remove. Также не splitContainer.Panel2.Controls.Remove. –

Смежные вопросы