web-dev-qa-db-fra.com

GroupBox dans WPF ne peut contenir qu'un seul élément?

Il semble que GroupBox ne peut contenir qu'un seul élément, si j'en place plusieurs, il ne rentrera pas (ou ne sera pas supprimé dans le mélange).

Est-ce par conception ou est-ce que je fais quelque chose de mal?

63
Athiwat Chunlakhan

Cela me semble juste. Vous devez mettre une grille ou un panneau (StackPanel, WrapPanel, etc.) en tant qu'enfant pour définir la disposition.

100
Luke Quinane

Oui, dans WPF, la GroupBox contiendra au maximum 1 élément. Vous pouvez inclure la grille en tant qu'enfant et dans la grille, spécifier les composants souhaités. Par exemple, 1 a placé deux boutons dans GroupBox à l'aide de la grille.

Le plan du document est illustré ci-dessous:

Document Outline

Le code est le suivant:

<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

Eh bien, la vraie réponse est parce que la boîte de groupe hérite de HeaderedContentControl

Jetez un œil ici MSDN

5
Aharon Muallem