C# 3次尝试失败后如何关闭表单?

C# 3次尝试失败后如何关闭表单?,c#,winforms,C#,Winforms,我有一个只有密码的登录表单。我希望此登录表单关闭,如果用户输入密码错误3次 我在类主体中声明此变量: int loginAttempts = 0; 当登录错误时,我使用: loginAttempts++; 在登录按钮中输入我使用的事件: private void login_bt_Enter(object sender, EventArgs e) { if (loginAttempts == 3) { login logf = new login();

我有一个只有密码的登录表单。我希望此登录表单关闭,如果用户输入密码错误3次

我在类主体中声明此变量:

int loginAttempts = 0;
当登录错误时,我使用:

loginAttempts++;
在登录按钮中输入我使用的事件:

private void login_bt_Enter(object sender, EventArgs e)
{
     if (loginAttempts == 3)
     {
         login logf = new login();
         logf.Close();
     }
}

这似乎不起作用。我做错了什么?

您正在关闭您创建的、甚至没有显示的
logf
实例。我认为您需要关闭当前表单:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

您正在关闭您创建的、甚至没有显示的
logf
实例。我认为您需要关闭当前表单:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

您正在关闭您创建的、甚至没有显示的
logf
实例。我认为您需要关闭当前表单:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

您正在关闭您创建的、甚至没有显示的
logf
实例。我认为您需要关闭当前表单:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

问题:您正在创建登录表单的新实例,然后关闭

解决方案:您需要关闭已经存在/打开的登录表单

因此,您需要获取已打开的登录表单usinf
Application.OpenForms[]

试试这个:

if (loginAttempts == 3)
{
  login form = (login) Application.OpenForms["login"];
  form.Close();
}

问题:您正在创建登录表单的新实例,然后关闭

解决方案:您需要关闭已经存在/打开的登录表单

因此,您需要获取已打开的登录表单usinf
Application.OpenForms[]

试试这个:

if (loginAttempts == 3)
{
  login form = (login) Application.OpenForms["login"];
  form.Close();
}

问题:您正在创建登录表单的新实例,然后关闭

解决方案:您需要关闭已经存在/打开的登录表单

因此,您需要获取已打开的登录表单usinf
Application.OpenForms[]

试试这个:

if (loginAttempts == 3)
{
  login form = (login) Application.OpenForms["login"];
  form.Close();
}

问题:您正在创建登录表单的新实例,然后关闭

解决方案:您需要关闭已经存在/打开的登录表单

因此,您需要获取已打开的登录表单usinf
Application.OpenForms[]

试试这个:

if (loginAttempts == 3)
{
  login form = (login) Application.OpenForms["login"];
  form.Close();
}

不创建实例,只需关闭当前窗体:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

不创建实例,只需关闭当前窗体:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

不创建实例,只需关闭当前窗体:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

不创建实例,只需关闭当前窗体:

login_bt_Enter(object sender, EventArgs e)
{
    if (loginAttempts == 3)            
        Close(); // simply close current form            
} 
if (loginAttempts == 3)
{
    this.Close();
}

从0开始,检查==3将允许4次尝试

从0开始,检查==3将允许4次尝试

从0开始,检查==3将允许4次尝试

从0开始,检查==3将允许4次尝试

您需要指定它是如何工作的。它正在工作。您关闭了您创建的全新表单。您需要指定它如何不工作。它正在工作。您关闭了您创建的全新表单。您需要指定它如何不工作。它正在工作。您关闭了您创建的全新表单。您需要指定它如何不工作。它正在工作。您关闭了您制作的全新表单。