web-dev-qa-db-ja.com

WPFのGroupBoxには1つの要素しか含めることができませんか?

GroupBoxに含めることができる要素は1つだけのようです。複数の要素を配置すると、その要素は内部に入りません(またはブレンドで削除されます)。

これは設計によるものですか、何か間違っていますか?

63

それは私には正しいですね。レイアウトを定義するには、グリッドまたはパネル(StackPanel、WrapPanelなど)を子として配置する必要があります。

100
Luke Quinane

はい。WPFでは、GroupBoxには最大1つの要素が含まれます。グリッドをその子として含めることができ、グリッドに必要なコンポーネントを指定します。たとえば、1は、グリッドを使用してGroupBoxに2つのボタンを配置しました。

ドキュメントの概要は次のとおりです。

Document Outline

コードは次のとおりです。

<GroupBox
            Header="Read Sensor"
            HorizontalAlignment="Left"
            Margin="485,4,0,0"
            VerticalAlignment="Top"
            Height="188"
            Width="238">
            <Grid
                HorizontalAlignment="Left"
                Height="169"
                Margin="0,0,-13,-3"
                VerticalAlignment="Top"
                Width="229">
                <Button
                    x:Name="btnReadSensor1"
                    Content="Read Sensor 1"
                    HorizontalAlignment="Left"
                    Margin="10,91,0,0"
                    VerticalAlignment="Top"
                    Width="207"
                    Click="btnReadSensor1_Click" />
                <Button
                    x:Name="btnReadSensor2"
                    Content="Read Sensor 2"
                    HorizontalAlignment="Left"
                    Margin="10,64,0,0"
                    VerticalAlignment="Top"
                    Width="207"
                    Click="btnReadSensor2_Click" />
            </Grid>
</GroupBox>
7
Hassan Rahman

本当の答えは、groupboxがHeaderedContentControlから継承するためです

こちらをご覧ください [〜#〜] msdn [〜#〜]

5
Aharon Muallem