Моя login_form скрывается от I go до user_form, и наоборот. Но после этого, когда я закрываю панель входа, она все еще работает в фоновом режиме - PullRequest
0 голосов
/ 06 августа 2020

Первая кнопка возвращает нас к форме пользователя, а вторая кнопка возвращает нас к форме входа.

Но если форма входа закрывается после одного входа в систему, она остается в фоновом режиме, но если никто не нажимает кнопку входа в систему и просто закрывается форма входа в систему, затем она закрывается нормально.

Она также остается в фоновом режиме, если я закрываю пользовательскую форму напрямую. Я также пробовал команду this.Close();, но если я это сделаю, текущая форма закрывается, а другая форма вообще не открывается.

private void User_login_b_Click(object sender, Event Args e)
{
    this.Hide();
    User user = new User();
    user.Show();
}


private void Logout_b_Click(object sender, Event Args e)
{
    this.Hide();
    Login login = new Login();
    login.Show();
}

1 Ответ

1 голос
/ 06 августа 2020

В обработчике событий Logout_b_Click вы создаете новый экземпляр формы входа, пока первый экземпляр все еще существует. Вам нужно использовать коллекцию Application.OpenForms, чтобы найти существующий экземпляр и снова показать его

private void Logout_b_Click(object sender, Event Args e)
{
    this.Hide();
    Login login = Application.OpenForms.Cast<Login>();
    if(login == null) 
         login = new Login();
    login.Show();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...