如何从第三种形式的事件中将表单作为子项加载到另一种形式?

时间:2015-11-16 18:33:16

标签: c# forms winforms

希望我能尽可能清楚地说明这一点

我有3种表格:frmMainfrmLoginfrmDashboard

当应用程序打开时,frmMain以mdiParent打开,frmLogin为mdiChild。用户输入正确的凭据后,frmLogin隐藏,frmDashboard作为frmMain的子项打开。

问题是我似乎无法让frmMain成为frmDashboard的父级,因为它是从frmLogin打开的

点击frmLogin登录按钮的代码如下:

if (account_exist == true)
{
   MessageBox.Show("Welcome back ");
   frmDashboard f = new frmDashboard();
   f.Show();
   this.Hide();
}

有人能用最好的方法来帮助我吗?

1 个答案:

答案 0 :(得分:0)

  

有人能用最好的方法来帮助我吗?

最佳和唯一正确的方法是separating concerns

登录表格不负责除登录之外的任何操作,并且应通知主表单完成登录过程。一旦发生这种情况,主表单应该呈现与后登录阶段相关的任何UI元素。