关闭的表单仍显示在任务栏中

时间:2019-04-08 23:20:36

标签: c# forms winforms

使用c#中的登录功能创建链接到数据库的多格式程序。

尝试使用show(),showdialog()和close(),dispose(),hide()在表单之间移动。

超过登录表单后,程序将无法正确关闭表单。

它关闭了窗体,因此用户无法再访问其控件,但是,“关闭”的窗体在Windows任务栏和选项卡菜单中仍然完全可见。

用户甚至可以将鼠标悬停在上述“已关闭”表单的任务栏图标上,并在那里查看所有信息!

该程序将处理敏感的个人信息。我需要帮助来阻止此问题的发生。

辅助表单上的后退按钮上的代码旨在完全关闭活动表单并打开主表单。

“曲线”是在方法外部定义的,因为它在程序中的多个按钮中使用。

Form CurForm = Form.ActiveForm;

public void Btn_Back_Click()
        {
            var MainForm = new MainForm();
            MainForm.Show();            
            CurForm.Close();        
        }

1 个答案:

答案 0 :(得分:0)

使用直接活动形式而不是curForm

Form.ActiveForm.Close();

如果要在创建新表单时在代码的其他部分中使用curForm,请更新curForm,如下所示:

Form CurForm;

public void Btn_Back_Click()
{
    CurForm= new MainForm(); 
    CurForm.Show(); 

    // Do some things  

    CurForm.Close();   
}