親フォームにコントロールを追加したい場合、子フォームがコントロールの下に表示されます。たとえば、MDIParent フォームにグループボックスと PictureBox を追加したいのですが、子フォームは、これらのコントロールの下に表示されます。
frmChildForm1.TopMost=true
どちらも機能しません。
詳細な説明のために写真を添付しました。
私に何ができる?!
親フォームにコントロールを追加したい場合、子フォームがコントロールの下に表示されます。たとえば、MDIParent フォームにグループボックスと PictureBox を追加したいのですが、子フォームは、これらのコントロールの下に表示されます。
frmChildForm1.TopMost=true
どちらも機能しません。
詳細な説明のために写真を添付しました。
私に何ができる?!
しかし、背景として画像が必要です
それは可能です。MDI クライアント コントロールの BackgroundImage プロパティを設定できます。唯一の障害は、そのコントロールへの参照を直接取得できないことです。フォームの Controls コレクションを繰り返して、それを見つける必要があります。このような:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
foreach (Control ctl in this.Controls) {
if (ctl is MdiClient) {
ctl.BackgroundImage = Properties.Resources.Lighthouse;
break;
}
}
}
}
Lighthouseは、リソースとして追加したサンプル画像です。独自のものを使用するように変更してください。もう 1 つの一般的な手法は、そのコントロールの Paint イベントをサブスクライブし、必要なものを描画することです。グラデーションは一般的な選択です。