0

我有一个登录表单,用户用来登录。登录后,他们会看到另一个表单,这个表单包含不同的标签。每个标签都被视为一个按钮。表单分为2个面板,左侧面板用于标签,右侧面板用于按钮操作。例如,我在左侧有 3 个标签,一个名为“Home”,另一个是“Register User”,最后是“Log Out”,当我按下标签“Users”时,TabControl 将显示在右侧,它有 2 个选项卡“注册用户”和“当前用户”。

单击“注销”并以其他用户身份登录后,我希望一切都干净,就像我从一开始就打开它一样。例如,主页应该首先显示,而不是最后一个可见面板。如果我现在使用名为“test”的用户登录,然后单击“用户”,然后注销并从其他用户登录,我仍然会看到“用户”面板打开,并且在文本框中输入的每个值仍然打开。我不想要这个。

我用来注销的代码是:

private void LogOutBtn_Click(object sender, EventArgs e)
    {
        this.Close();
        Globals.LoginForm.Show();
    }

我用来从登录表单移动到欢迎表单的代码是:

 private void LoginBtn_Click(object sender, EventArgs e)
    {
                    this.Hide();
                    Globals.WelcomeForm.ShowDialog();
    }
4

2 回答 2

0

尝试在每次显示时声明一个新的 WelcomeForm。像这样的东西:

 private void LoginBtn_Click(object sender, EventArgs e)
    {
         Globals.WelcomeForm NewWelcomeForm = new Globals.WelcomeForm();
         this.Hide();
         NewWelcomeForm.ShowDialog();
    }

新的构造函数将重置所有控件及其值。

于 2013-07-28T04:02:54.363 回答
0

没关系,我让它工作了。我知道我的错误 :) 在不同的类中声明它并从该类调用导致了我这个问题。

我现在的代码是

private void LoginBtn_Click(object sender, EventArgs e)
{
     Welcome NewWelcomeForm = new Welcome();
     his.Hide();
     NewWelcomeForm.ShowDialog();
}
于 2013-07-29T20:13:07.137 回答