1

親フォームにコントロールを追加したい場合、子フォームがコントロールの下に表示されます。たとえば、MDIParent フォームにグループボックスと PictureBox を追加したいのですが、子フォームは、これらのコントロールの下に表示されます。

frmChildForm1.TopMost=true どちらも機能しません。

詳細な説明のために写真を添付し​​ました。

私に何ができる?!

ここに画像の説明を入力

4

1 に答える 1

2

しかし、背景として画像が必要です

それは可能です。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 イベントをサブスクライブし、必要なものを描画することです。グラデーションは一般的な選択です。

于 2011-11-04T11:51:23.743 に答える