0

次のフォームがあります:main_menu(mdicontainer)、form1、およびform2。main_menu で from1 を mdichild として開くことができます

form1 newMDIChild = new form1();

newMDIChild.MdiParent = this;

newMDIChild.Show();

form1 から main_menu の mdichild として form2 を開こうとすると

form2 newMDIChild = new form2();

newMDIChild.MdiParent = this.MdiParent;

newMDIChild.Show;

this.close();

非子フォームとしてまだ form2 を開いています。これまでのところ、解決策は見つかりませんでした。何か案は?前もって感謝します。

4

1 に答える 1

0

あなたの投稿では、両方のフォームが同じ親の子であることを暗示しています。この場合、form1 の親は正しい親に設定されていますが、form2 の親はその親の親に設定されています。実際には、form2 を子ではなく、それを生成するオブジェクトの兄弟にしています。

変更してみる

newMDIChild.MdiParent = this.MdiParent;

newMDIChild.MdiParent = this;

フォーム2のスポーン時。

于 2013-03-28T15:16:48.730 に答える