如何打开我的“登录”通过单击另一个表单中的按钮来切换主表单?无需再次登录

本文关键字:登录 表单 按钮 我的 何打开 另一个 单击 | 更新日期: 2023-09-27 18:06:39

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();
            }
        }

如何打开我的“登录”通过单击另一个表单中的按钮来切换主表单?无需再次登录

试试这个方法,虽然不是最好的,但对你来说很有效。

Login Form中,添加如下静态属性

public static bool Logueado { get; private set; }
然后在Login Form中,当用户连接成功时,设置Logueado = true;

现在在Main Form中,在load事件中,你只需这样做:

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

这样,您就不需要在load事件中创建新的Login表单,因此,您将不会获得另一个Login表单。