В WPF С#, в коде позади, я должен динамически создавать массив холста (каждый холст также имеет дочерние элементы управления, такие как метка, текстовое поле, кнопка и т. д.)
Canvas[] cv = new Canvas[myInt];
Label[] l = new Label[myInt];
TextBox[] tb = new TextBox[myInt];
...
Canvas.Children.Add(...);
Каждый холст может быть динамически добавлен или удален. Проблема в том, что я должен указать длину массива Canvas, и если один из Canvas будет удален, индекс все равно останется, а последующие элементы не могут быть перемещены вверх. Если позже я добавлю новые холсты, у нового холста может быть возможность выйти за пределы диапазона, если только я не создам экземпляр очень большого массива с самого начала.
Есть ли лучшее решение для этого? Будет ли ArrayList, или список, или что-то еще?