关闭MessageBox但保持Form Open

时间:2014-03-29 21:19:12

标签: c# forms messagebox

我已经制作了一个用户使用用户名和密码登录的表单。如果密码不正确,我有一个messageBox RetryCancel。我希望用户单击“重试”并关闭消息框,同时保持“登录”表单仍然处于运行状态,以便用户可以尝试再次登录。

我尝试了很多不同的选项,基本上我得到的是无限循环或所有窗口关闭。这是我到目前为止所得到的。谢谢,

if (line != PassWord)
do
{
        result = MessageBox.Show(message, "Error", MessageBoxButtons.RetryCancel, MessageBoxIcon.Information);
        result = DialogResult.Retry;
        this.Close();
} while(result == DialogResult.Retry);
if (line == PassWord)
{
    Close();
}

2 个答案:

答案 0 :(得分:0)

if (line != PassWord)
{
    var result = MessageBox.Show(message, "Error", MessageBoxButtons.RetryCancel,    MessageBoxIcon.Information);
    if (result == MessageBoxResult.Cancel)
    {
        // User chose cancel, close app or whatever
    }
    else
    {
        // User pressed retry, nothing really happens
    }
}       
else if (line == PassWord)
{
    Close();
}

答案 1 :(得分:0)

为什么不设计简单的登录表单并在登录按钮上检查登录用户名和密码。如果身份验证失败,则只需显示带有okonly选项的“检查用户名和密码”的消息框。