Искать можешь у формы, но удалять должен у того, у которого он содержится!!!
| Код | for (int i = 0; i < 50; i++) { Control[] c = this.Controls.Find("cb" + i.ToString(), true);
foreach (Control con in c) { groupBox1.Controls.Remove(con); } }
|
а если, например, ты не знаешь родителя, который содержит удаляемый контрол, то можешь так:
| Код | for (int i = 0; i < 50; i++) { Control[] c = this.Controls.Find("cb" + i.ToString(), true);
foreach (Control con in c) { con.Parent.Controls.Remove(con); } }
|
И в заключении, такой подход (динамическое удаление/добавление) не является наилучшим, особенно если эта процедура выполняется часто. Для такой задачи лучше всего будет реализовать что-нибудь наподобие растущего кэша. То есть добавляются при необходимости, а вместо удаления Visible = false... ИМХО. |