Определите, что вы подразумеваете под "я должен разместить их на странице".
Вы имеете в виду Drag'n'Drop их на страницу aspx? Если вы это сделали, вам придется копировать каждый из них - один набор, созданный страницей, и второй, созданный вами, который заменяет первый набор.
Как меняется количество флажков («20 (+/- 10)»)? Это варианты, поступающие из базы данных? Они исправлены, но вы просто еще не знаете, сколько?
Один забавный аспект ControlCollection заключается в том, что элемент управления может находиться только в одном за раз. Если бы вы попробовали:
ControlCollection cool = new ControlCollection ();
coll.Add(Page.Controls[0]);
Он будет добавлен в coll, но он автоматически будет удален из Page.Controls.
РЕДАКТИРОВАНИЕ: (отвечая на комментарий)
В своем коде создайте флажки вручную (прошло уже много времени с тех пор, как я написал код WebForm, поэтому я немного здесь в моде) и поместите его в массив (у массива не должно быть проблем, о которых я упоминал в отношении ControlCollection)
CheckBox[] boxes = new Checkbox[20];
for(int i =0; i< 20; ++i)
{
boxes[i] = new CheckBox();
// do stuff here
Page.Controls.Add(boxes[i]);
}
Теперь для «делай вещи здесь» нам нужно, чтобы они были в нужном месте. Есть несколько способов. Мы можем построить вокруг них <table>
; у нас может быть <asp:placeholder>
элементов управления в aspx, которые мы тоже добавляем; мы можем установить атрибуты позиции стиля CSS.