спасибо за чтение.Невозможно утилизировать и удалять элементы управления из списка управления
У меня есть форма C# .NET с кнопками, которые переключают элементы управления на главной панели. У меня не было никаких проблем, пока я не перешел на Visual Studio 2012 и Advanced Installer. Целевая структура - 4.0, а не 4.5.
Когда я меняю элементы управления, я удаляю и удаляю предыдущее, прежде чем добавлять новый, но я получаю сообщение об ошибке, когда еще нет элементов управления (т. Е. Когда первый загружает).
Исходный цикл разбился с чем-то об итерации при изменении коллекции, так что теперь я пытаюсь просто удалить один элемент управления после того, как он был там.
Эти ошибки: Индекс 0 находится за пределами допустимого диапазона.
Все это отлично работает на dev-машине, и это не проблема с использованием старого встроенного установщика VS.
Любые идеи? 4.0? Отсутствует ссылка не развернута?
Спасибо!
panelMain.SuspendLayout();
int control_count = panelMain.Controls.Count;
if (control_count > 1) {
Log.Write("More than one control found in main panel.", ErrorLevel.Error);
}
if (control_count > 0) {
Control current_ctrl = panelMain.Controls[0];
current_ctrl.Dispose();
panelMain.Controls.Remove(current_ctrl);
}
//foreach (Control ctrl in panelMain.Controls) {
// ctrl.Dispose();
// panelMain.Controls.Remove(ctrl);
//}