1.StackPanel控件,会充满空间

水平布局

<StackPanel Orientation="Vertical">
            <Button Content="Button"/>
            <Button Content="Button"/>
            <Button Content="Button"/>
        </StackPanel>

垂直布局

<StackPanel Orientation="Horizontal">
            <Button Content="Button"/>
            <Button Content="Button"/>
            <Button Content="Button"/>
        </StackPanel>

2. WrapPanel布局,空间填充不够的时候,另起一行,遮盖的地方不会显示了

水平布局

<WrapPanel Orientation="Horizontal">
            <Button Content="Button" Height="300" Width="300"/>
            <Button Content="Button" Height="300" Width="300"/>
            <Button Content="Button" Height="300" Width="300"/>
        </WrapPanel>

 垂直布局

<WrapPanel Orientation="Vertical">
            <Button Content="Button" Height="300" Width="300"/>
            <Button Content="Button" Height="300" Width="300"/>
            <Button Content="Button" Height="300" Width="300"/>
        </WrapPanel>

3.Grid,网络面板,想怎么分割就怎么分割

3行2列

<Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="2*" />
            <ColumnDefinition Width="1*" />
            <ColumnDefinition Width="1*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="1*" />
            <RowDefinition Height="1*" />
        </Grid.RowDefinitions>
        <Button Grid.Column="0">Button 1</Button>
        <Button Grid.Column="1">Button 2</Button>
        <Button Grid.Column="2">Button 3</Button>
        <Button Grid.Column="0" Grid.Row="2">Button 4</Button>
        <Button Grid.Column="1" Grid.Row="2">Button 5</Button>
        <Button Grid.Column="2" Grid.Row="2">Button 6</Button>
    </Grid>

 4.DockPanel,将子控件停靠在顶部、底部、左侧或右侧

<DockPanel>
            <Button DockPanel.Dock="Bottom">Button 1</Button>
            <Button DockPanel.Dock="Left">Button 2</Button>
            <Button DockPanel.Dock="Right">Button 3</Button>
            <Button DockPanel.Dock="Top">Button 4</Button>
            <Button DockPanel.Dock="Right">Button 5</Button>
        </DockPanel>

5. UniformGrid,所有行和列将具有相同的大小,平均分

 <UniformGrid Columns="2" Grid.Row="2">
            <Button Content="Button1"></Button>
            <Button Content="Button2"></Button>
            <Button Content="Button3"></Button>
            <Button Content="Button4"></Button>
        </UniformGrid>

 6.Canvas, 和winform的控件差不多,根据位置移动。

<Canvas Width=" 200" Height="200" Background="Red" Margin="488,136,104,83">
            <Button Content="Button1"></Button>
        </Canvas>

来源:WPF-布局-《一》_wpf stackpanel 填充剩余空间_故里2130的博客-CSDN博客

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐