1

私は、新しい子フォームを作成できる Windows フォーム MDI アプリケーションに取り組んでいます。親フォームには、Statusstrip に StatusLabel があります。親フォームの StatusLabel テキスト値をアクティブな子フォームの名前に変更する方法を見つけようとしています。子フォームで「アクティブ化」イベントを作成しましたが、親フォームの statusLabel を子フォームの「アクティブ化」コード ブロックから変更する方法がわかりません。

基本的に、親フォームのラベルを子フォームの name プロパティに変更したいと考えています。

どんな助けでも大歓迎です。

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 に答える