如何打开我的"登录"主要表单,通过单击另一个表单中的按钮?并且没有再次登录

时间:2016-09-10 16:49:35

标签: c#

public partial class Menu : Form
    {

        // this is my main form, What I really want 
        //is not re-enter my name and password
        //when I call this form from another form button.
        public Menu()
        {

            InitializeComponent();

            {

            }
            unidadesToolStripMenuItem.Enabled = false;
            materialesToolStripMenuItem.Enabled = false;
            datosToolStripMenuItem.Enabled = false;
            chequeoToolStripMenuItem.Enabled = false;
            informeToolStripMenuItem.Enabled = false;
            proyectoToolStripMenuItem.Enabled = false;
        }

       // public void MenuDatosComb();
       // if()

        public bool UsuarioLogueado = false;
        private void Menu_Load(object sender, EventArgs e)
        {

            this.Hide();
            Login login = new Login();
            login.ShowDialog();
            if (login.Logueado == true)
            {
                this.Show();
                UsuarioLogueado = true;
                toolStripStatusLabel2.Text = "Usuario: " + login.Resultado.Substring(20);
            }
            else
            {
                this.Close();
            }
        }

1 个答案:

答案 0 :(得分:1)

尝试这种方法,不是最好的方法,但对你有用。

登录表单中,添加一个像这样的静态属性

public static bool Logueado { get; private set; }

然后在登录表单中,当用户成功连接时,您设置Logueado = true;

现在,在您的表单中,在加载事件中,您只需执行以下操作:

this.Hide();
if (Login.Logueado == true)
{
    // show
}
else
    // close

有了这个,您不需要在加载事件中创建新的登录表单,因此,您将不会再获得另一个登录表单。