Форма окна не закрывается - PullRequest
       3

Форма окна не закрывается

1 голос
/ 18 августа 2011

Привет, ребята, я новичок в приложении Windows.

У меня есть форма, в которой событие нажатия кнопки «Вход» я показывал другим формам.Пример, как у меня есть страница входа после аутентификации пользователя, показаны две другие формы.Но я хочу, чтобы после аутентификации пользователя форма входа в систему должна быть закрыта, но другие два остаются открытыми.

Ниже приведен код, имя моей формы входа в систему LogIn.cs

private void btnLogIn_Click(object sender, EventArgs e)
{
    if(ValidateUser())
    {
       //Form1

        DetailForm form = new DetailForm(txtUserName.Text.ToString());
        form.Show();

        //Form2

        Progressbar progress = new Progressbar();
        progress.Show();
    }
}

пожалуйста, напишите какой-нибудь код

Ответы [ 5 ]

1 голос
/ 18 августа 2011

Вы можете закрыть форму, используя Form.Close ()

1 голос
/ 18 августа 2011
private void btnLogIn_Click(object sender, EventArgs e)
{
    if(ValidateUser())
    {
       //Form1

        DetailForm form = new DetailForm(txtUserName.Text.ToString());
        form.Show();

        //Form2

        Progressbar progress = new Progressbar();
        progress.Show();
        this.Close();
    }
}
0 голосов
/ 21 августа 2011

Да, собирался сказать тат и только что заметил ваш последний комментарий! форма, имеющая ValidateUser, является вашей LoginForm .. ваш вопрос не очень ясен. Так что это не может быть закрыто. Вы должны скрыть это, если вы не хотите это в фоновом режиме.

0 голосов
/ 18 августа 2011

Проблема в том, что основной цикл сообщений вашего приложения находится в форме входа в систему, это означает, что если вы остановите этот цикл сообщений, ваше приложение остановится.
Лично я не позволю форме входа в систему владеть основным сообщениемцикл вашего приложения.Я бы не открывал DetailForm и ProgressBar из формы входа, это не имеет особого смысла.Я бы создал родительский класс, который контролирует все из них.
Если вы хотите, чтобы форма входа в систему была главной в вашем приложении, но скрывали ее после входа в систему, вы можете либо использовать Hide (), либо запуститьдва дочерних окна в отдельных потоках или процессах (не рекомендуется).

0 голосов
/ 18 августа 2011

В каждой форме, которую вы можете использовать, есть метод «Закрыть».

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