如何在新表单打开时关闭密码表单?
public partial class Password : Form
{
private string password;
public Password()
{
InitializeComponent();
}
private void pass_TextChanged(object sender, EventArgs e)
{
password = "1234";
}
private void okButton_Click(object sender, EventArgs e)
{
if (passtextBox.Text == password)
{
list form = new list();
form.Show();
}
else
{
MessageBox.Show("Incorrect Password. Try Again!!");
}
}
}
当我使用this.close();
时,我的新表单和密码形式都很接近。
我该怎么办?
答案 0 :(得分:3)
我认为您的PasswordForm
是您在Application.Run
方法中传递的主要表单。
因此,当主窗体关闭时,应用程序将退出。
我建议您隐藏表单而不是关闭它。
list form = new list();
form.Show();
this.Hide();
答案 1 :(得分:1)
您可以使用MDI表单作为父表单。 创建新表单并在MDI或任何父表单上打开新表单(MDI表单的子表单)时,您可以搜索所有打开的子表单。如果发现任何子表单已打开,请关闭该子表单。通过这种方式,您可以管理表单的打开和关闭。
感谢。
答案 2 :(得分:1)
如果密码正确,您想要显示新表单并关闭第一个表单,不是吗? 试试这个:
Form secondform = new form();
Secondform.show();
Form1 firstform = new form1();
Firstform.hide();
答案 3 :(得分:0)
我自己修理了
公共部分密码:表格 { 私人密码; 公共密码() { 的InitializeComponent(); }
private void pass_TextChanged(object sender, EventArgs e)
{
password = "1234";
}
private void okButton_Click(object sender, EventArgs e)
{
if (passtextBox.Text == password)
{
// list form = new list();
//form.Show();
//list secondform = new list();
//secondform.Show();
//Password firstform = new Password();
// firstform.Hide();
this.Hide();
list sistema = new list();
sistema.ShowDialog();
this.Close();
}
else
{
MessageBox.Show("Incorrect Password. Try Again!!");
}
}
}
}