2010-01-07 3 views
0

Я создал форму для входа в C#.Открыть вторую форму при автоматическом закрытии первой формы

Если пользователь подписывает правильный пароль и имя пользователя и нажимает кнопку «Войти», открывается вторая форма. Как закрыть форму для входа после последнего шага?

ответ

4

Измените свой метод Main() в Program.cs, чтобы отобразить диалоговое окно входа в систему. Не запускайте цикл сообщений, если не был введен действительный логин. Например:

static void Main() { 
    Application.EnableVisualStyles(); 
    Application.SetCompatibleTextRenderingDefault(false); 
    using (var login = new LoginForm()) { 
    if (login.ShowDialog() != DialogResult.OK) return; 
    } 
    Application.Run(new Form1()); 
} 

Ваш LoginForm должен установить для свойства DialogResult значение ОК, если он обнаружит правильный логин.

+0

;-) thk u очень много !! – Sjemmie

0

Вы можете ввести

FormName.ActiveForm.Close(); 

Он закрывает текущую активную форму.

0

Я хотел бы сделать ShowDialog() из Логиниться от основной формы.

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

private void Form1_Load(object sender, EventArgs e) 
    { 

     var foo = new Form() { Text = "Login" }; 
     if (foo.ShowDialog() == DialogResult.OK) 
     { 
      ... 
     } 
    } 
Смежные вопросы