Создание выигрышных форм программно? - PullRequest
1 голос
/ 20 августа 2011

У меня есть небольшая проблема в этом. Мне нужно создавать окна формы программно из моего класса запуска.

У меня есть цикл foreach, подобный этому:

int count = 1;
foreach (User user in User.AllUsers)
{
    Form myForm = new Form();
    myForm.Text = "User: " + count;
    myForm.Show();

    count ++;
}

Проблема в том, что мне нужно, чтобы имя "myForm" было переменным, чтобы у каждой созданной формы было свое имя, к которому я позже смогу обратиться, например; myForm1, myForm2, myForm3 и так далее. Я пробовал разные вещи, но вы не можете присвоить переменную этому имени.

Как ты это делаешь?

1 Ответ

2 голосов
/ 20 августа 2011

Если вы хотите хранить ссылки на несколько объектов, вы сохраняете их как элементы в коллекции, а не в нескольких отдельных переменных.

int count = 1;
List<Form> formInstances = new List<Form>();
foreach (User user in User.AllUsers)
{
    Form myForm = new Form();
    myForm.Text = "User: " + count;
    myForm.Show();
    formInstances.Add(myForm);
    count ++;
}

Однако, поскольку Oded уже прокомментировал, вы не можете использоватьWinForms в ASP.NET, поэтому вам нужно снова подумать о том, чего именно вы пытаетесь достичь, а затем получить хорошую книгу и узнать о программировании на .NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...