親フォームを1つ作成し、そのためにControlAddedイベントを発生させました。また、この親フォームのプロパティIsMdiContainerをtrueに設定します。そして、それはControlAddedイベントを発生させていない親フォームに子フォームを追加するとき、コードをデバッグするとき、私はコードの下などChildForm1とChildForm2と呼ばれる新しい形の、この上記のコードで新しいMDIフォームが親MDIフォームに追加されたことはどうすれば分かりますか?
public partial class ParentForm : Form
{
public ParentForm()
{
InitializeComponent();
this.ControlAdded += Form1_ControlAdded;
this.IsMdiContainer = true;
Form ChildForm1 = new Form();
ChildForm1.MdiParent = this;
ChildForm1.Show();
Form ChildForm2 = new Form();
ChildForm2.MdiParent = this;
ChildForm2.Show();
}
void Form1_ControlAdded(object sender, ControlEventArgs e)
{
MessageBox.Show("Control Added" + e.Control.Name);
}
}
を、作成した場合。だから、これを達成するための何か方法を提案できますか?
[MDIフォームで子フォームを検出すると追加または削除される可能性があります](http://stackoverflow.com/questions/538204/mdi-form-detecting-with-a-child-form-is-added-または削除) – BugFinder
これを実行する最良の方法は、親を常に新しいMDI子ウィンドウを作成するものにすることです。 'public void CreateChild()にT:Form'を追加します。親が1つしかないので静的にすることもできます。 –