You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WinForms登录后返回登录页如何保持窗体引用并保留密码

解决WinForms返回登录页保留原实例及输入内容的问题

你的问题核心是每次返回登录页都新建了Login_Form实例,导致之前的输入丢失。要实现保留原实例和输入内容,只需要让Admin_Form持有原始登录窗体的引用,返回时直接显示这个实例即可,具体修改如下:

  1. 修改Login_Form的登录按钮事件
    创建Admin_Form时,把当前登录窗体的实例传递过去:

    private void btn_admin_login_Click(object sender, EventArgs e)
    {
        var adminForm = new Admin_Form(this);
        adminForm.Show();
        this.Hide();
    }
    
  2. 修改Admin_Form的构造函数
    添加字段保存登录窗体的引用,修改构造函数接收这个实例:

    private readonly Login_Form _loginForm;
    
    public Admin_Form(Login_Form loginForm)
    {
        InitializeComponent();
        _loginForm = loginForm;
    }
    
  3. 修改Admin_Form的返回按钮事件
    直接显示保存的原始登录窗体实例,不再新建:

    private void Btn_back_Click(object sender, EventArgs e)
    {
        _loginForm.Show();
        this.Hide();
    }
    

这样调整后,点击返回按钮时显示的是最初创建的Login_Form实例,输入框里的密码内容会完整保留。如果后续需要处理窗体关闭的场景,可以在Admin_Form的FormClosing事件中做额外处理,避免登录窗体被意外释放。

内容的提问来源于stack exchange,提问作者George

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 08:30:43