まず、ChildForm1 の参照を ChildForm2 に渡すことによって、ChildForm1 から ChildForm2 を開きます。
ChildForm2 objChildForm2 = new ChildForm2(this);
objChildForm2.MdiParent = this.MdiParent;
objChildForm2.Show();
ChildForm2 に移動し、Parametrize コンストラクターを追加して、ChildForm1 のグローバル オブジェクトも作成します。
ChildForm1 objChildForm1 = null;
public ChildForm2(ChildForm1 obj)
{
InitializeComponent();
objChildForm1 = obj; // Passing refrence of ChildForm1
obj.Hide(); // this will hide the ChildForm1
}
ChildForm2 を開くと、obove パラメーター化コンストラクターが呼び出され、ChildForm1 が非表示になります。また、ChildForm2 の終了時に ChildForm1 を再度開くことができます。そのための次のコードを記述します。
private void btnClose_Click(object sender, EventArgs e)
{
objChildForm1.Show();// you can access all public members of ChildForm1 by the Global //object "objChildForm1"
this.Close();
}