无法从子表单访问MDI父表单的标签文本

时间:2016-11-28 11:49:03

标签: c# .net winforms

我有以下情况。

我成功登录MDI Parent表单(在标签中)后存储用户名以备将来使用。但是当我尝试从Child表单访问该标签文本时。它没有显示任何内容。我以父表单的形式公开了label属性,就像这样......

public string UserNameText
{
    get
    {
        return this.lblUserName.Text;
    }

    set
    {
        this.lblUserName.Text = value;
    }
}

但是当我试图从子表单访问该标签文本时,它显示空字符串。这是子表单按钮的代码点击。

private void button1_Click(object sender, EventArgs e)
{            

   frmHome Home = new frmHome();    //frmHome is name of my parent Form.
   MessageBox.Show(Home.UserNameText);
}

1 个答案:

答案 0 :(得分:3)

尝试这样:

private void button1_Click(object sender, EventArgs e)
{            
   frmHome Home = (frmHome)this.ParentForm;
   MessageBox.Show(Home.UserNameText);
}

请注意,这仅在MDI子窗体的属性MdiParent设置正确时才有效。