Примечание: Причина, по которой я предлагаю альтернативный подход вместо прямого рассмотрения исходного вопроса, заключается в том, что я не вижу ничего плохого в коде, который опубликовал ОП.
Альтернативным подходом было бы создание обоих элементов управления в конструкторе форм в одном и том же месте и переключение их видимости только при выполнении вашего критерия.
Как было отмечено в комментарии, у этого подхода действительно есть недостаток, а именно то, что обработка формы в конструкторе становится немного сложнее.
Если это окажется проблемой, вы все равно можете использовать Designer для достижения другой цели: используйте описанный выше подход только для просмотра того, какой код необходим для создания «нового» элемента управления; затем удалите этот код из InitializeComponent
и переместите его туда, где «старый» элемент управления должен быть заменен новым. Таким образом, вы можете быть уверены, что код для создания нового элемента управления будет правильным.