次のように不透明度を50%に設定したフォームがあります。
this.Opacity = 0.5D; <--this==Form
私の問題は、フォーム上のすべてが50%の不透明度であるということです
フォームに2つのボタンがあり、不透明度なしでボタンが必要です。
私はそれthis.Opacityがすべてのコントロールと何らかの理由でグラフィックスも含んでいたことを知っています
私の質問は、コントロールの不透明度を除外する方法ですか?
画像の例:

ありがとう!
Controlプロパティがなく、それOpacityに加えて、ほとんどのコントロールは透明色をサポートしていないため、実用的な解決策は次のようになります。
Form呼び出されたものを作成し、MainForm除外するすべてのコントロールを配置します。
1.1との両方のプロパティを同じ色に設定BackColorしTransparencyKeyますMainForm。例:Color.Red
名前の付いた別のフォームを作成TransparentFormし、透明にする必要があるすべてのコントロールを配置します。ShowInTaskbarプロパティをに設定しますFalse。
MainForm Loadイベントで表示し、それTransparentFormを送り返します。
private void MainForm_Load(object sender, EventArgs e)
{
TransparentForm form = new TransparentForm();
form.Opacity = 0.5D;
form.Show();
form.SendToBack();
}

両方の形式のコントロールの位置は、組み合わせたときに適切なユーザーインターフェイスを表示するようにする必要があります。
C#プロジェクトを作成し、という名前の3つのフォームを追加します
そして、「MAIN」フォームロードイベントに次のコードを追加します。
private void MAIN_Load(object sender, EventArgs e)
{
Child frm1 = new Child();
BACKGOUND frm2 = new BACKGOUND();
frm2 .WindowState = System.Windows.Forms.FormWindowState.Maximized;
frm2.Opacity = 0.5;
frm2.Show();
frm1.ShowDialog();
frm2.Close();
}