在自动关闭第一个表单时打开第二个表单

时间:2010-01-07 12:35:21

标签: c# forms

我在c#中创建了一个登录表单。

如果用户使用正确的密码和用户名登录并点击“登录”,则会打开第二个表单。如何在最后一步之后关闭登录表单?

4 个答案:

答案 0 :(得分:4)

更改Program.cs中的Main()方法以显示登录对话框。除非输入了有效的登录,否则不要启动消息循环。例如:

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属性设置为OK。

答案 1 :(得分:0)

您可以输入

FormName.ActiveForm.Close();

关闭当前的活动表单。

答案 2 :(得分:0)

您可以致电this.Close();

答案 3 :(得分:0)

我会从主窗体中执行Login Form的ShowDialog()。

登录表单关闭后,您将返回主窗体。

    private void Form1_Load(object sender, EventArgs e)
    {

        var foo = new Form() { Text = "Login" };
        if (foo.ShowDialog() == DialogResult.OK)
        {
           ...
        }
    }