1

我正在开发一个 Windows 窗体 MDI 应用程序,它可以在自身内部创建新的子窗体。父窗体在 Statusstrip 中有一个 StatusLabel。我试图弄清楚如何将父表单的 StatusLabel 文本值更改为活动子表单的名称。我在子表单中创建了一个“激活”事件,但我不知道如何从子表单“激活”代码块中更改父表单 statusLabel。

基本上我想将父表单中的标签更改为子表单名称属性。

任何帮助将不胜感激。

4

1 回答 1

0

尝试订阅子窗体的 Activated 事件:

protected override void OnLoad(EventArgs e) {
  base.OnLoad(e);

  for (int i = 0; i < 3; ++i) {
    Form f = new Form();
    f.Activated += f_Activated;
    f.MdiParent = this;
    f.Text = "Form #" + i.ToString();
    f.Show();
  }      
}

void f_Activated(object sender, EventArgs e) {
  toolStripStatusLabel1.Text = ((Form)sender).Text;
}
于 2014-10-10T22:57:53.273 回答