В чем разница между Bower и npm?

Ошибка foreach не будет выполнена, потому что вы меняете коллекцию, которая прерывает итератор.

Ошибка сбоя, потому что вы удаляете только каждый другой элемент; рассмотрим: i = 0, вы удалите нулевой элемент. Теперь элемент, который был элементом 1, является элементом 0 - поэтому, когда вы удаляете элемент 1 (итерация следующего цикла), вы подпрыгнули.

Короткая версия: используйте Clear():

contentsPanel.Controls.Clear();

Более длинная версия: итерация назад:

for(int i=contentsPanel.Controls.Count-1; i>=0;i--) {
   contentsPanel.Controls.RemoveAt(i);
}

Первый (Clear) проще.

1701
задан Haifeng Zhang 2 March 2017 в 18:33
поделиться