В настоящее время вам нужно будет использовать .Net Core 3.0 Preview , так как System.Windows.Forms является новым в .Net Core 3.0. Из System.Windows.Forms репозитория :
Вы можете создать новое приложение WinForms с помощью команды dotnet new, используя следующие команды:
blockquote >dotnet new winforms -o MyWinFormsApp cd MyWinFormsApp dotnet run
Yuriy Solodkyy объясняет это хорошо здесь: Динамично Созданные Средства управления в ASP.NET
Когда динамичное создание управляет Вами, должен гарантировать, что каждое управление, которое Вы создаете, имеет уникальный идентификатор.
Я думаю, что происходит, вот то, что Вы называете свои средства управления как: Control1, Control2, Control3.
И возможно то, когда Вы нажимаете для создания другого набора средств управления, Вы могли бы дать то же имя к другому типу объекта, позволяет, говорят, что Control1 был сначала создан как Текстовое поле и когда Вы нажимаете, это - флажок.
Не видя код жестко для сообщения почему ViewState. Ясный () не работает, но при попытке очистить состояние отображения, Вам не нужна обратная передача, можно попытаться запросить новую страницу и передать аргументы querystring вместо обратной передачи. Это будет быстрее также, поскольку Вы не должны передавать информацию о ViewState обратно серверу.