WPF布局控件之StackPanel布局

前言

博主文章仅用于学习、研究和交流目的,不足和错误之处在所难免,希望大家能够批评指出,博主核实后马上更改。

概述:

StackPanel可以把内部的元素在纵向或者横向的排列。

名称说明
Grid网格,根据自定义行和列来设置控件的布局
StackPanel栈式面板,包含的元素在竖直或水平方向排成一条直线
WrapPanel自动折行面板,包含的元素在排满一行后,自动换行
DockPanel泊靠式面板,内部的元素可以选择泊靠方向
UniformGrid网格,UniformGrid就是Grid的简化版,每个单元格的大小相同。
Canvas画布,内部元素根据像素为单位绝对坐标进行定位
Border装饰的控件,此控件用于绘制边框及背景,在Border中只能有一个子控件

一、StackPanel

常用属性数据类型可选值说明
OrientationOrientationHorizontal(水平排列)\Vertical(垂直排列)决定内部元素是水平还是垂直排列,默认值(Vertical)
BackgroundBrush背景色(Red/Yellow等等)
HorizontalAlignmentHorizontalAlignmentCenter(中心)/Left(靠左)/Right(靠右)/Stretch(拉伸以填充父元素)决定内部元素在水平方向的对齐方式
VerticalAlignmentVerticalAlignmentTop(上方)/Center(中心)/Bottom(下方)/Stretch(拉伸以填充父元素)决定内部元素在垂直方向的对齐方式

Orientation属性演示

代码如下(水平排列):
 <Window.Resources>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Width" Value="100" ></Setter>
        </Style>
    </Window.Resources>
    <Grid >
        <StackPanel Orientation="Horizontal">
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
        </StackPanel>
    </Grid>
效果图如下

在这里插入图片描述

代码如下(垂直排列):
    <Window.Resources>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Height" Value="100" ></Setter>
        </Style>
    </Window.Resources>
    <Grid >
        <StackPanel>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
        </StackPanel>
    </Grid>
效果图如下

在这里插入图片描述

Background属性演示

代码如下
     <StackPanel  Background="Red">
         
        </StackPanel>
效果如下

在这里插入图片描述

HorizontalAlignment属性演示

代码如下(水平靠右)其他同理
    <Window.Resources>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Height" Value="100" ></Setter>
        </Style>
    </Window.Resources>
    <Grid >
        <StackPanel HorizontalAlignment="Right">
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
        </StackPanel>
    </Grid>
效果图如下

在这里插入图片描述

VerticalAlignment属性演示

代码如下(垂直向下)其他同理
   <Grid >
        <StackPanel VerticalAlignment="Bottom">
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
            <Button>zhangsan</Button>
        </StackPanel>
    </Grid>
效果图如下

在这里插入图片描述

总结

在实际工作中,我们可以使用Orientation、HorizontalAlignment、VerticalAlignment 这三个属性组合各种排列和对齐方式。

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
StackPanelWPF 中常用的容器控件之一,它可以将其子控件按照垂直或水平的方式排列。下面是一些关于 StackPanel 的使用方法: 1. 垂直布局: ```xaml <StackPanel Orientation="Vertical"> <Button Content="Button1"/> <Button Content="Button2"/> <Button Content="Button3"/> </StackPanel> ``` 上述代码创建了一个垂直布局StackPanel,并在其中添加了三个 Button。 2. 水平布局: ```xaml <StackPanel Orientation="Horizontal"> <Button Content="Button1"/> <Button Content="Button2"/> <Button Content="Button3"/> </StackPanel> ``` 上述代码创建了一个水平布局StackPanel。 3. 嵌套布局: 可以在一个 StackPanel 中嵌套另一个 StackPanel,以实现更复杂的布局效果。例如,可以在一个垂直布局StackPanel 中再添加一个水平布局StackPanel: ```xaml <StackPanel Orientation="Vertical"> <StackPanel Orientation="Horizontal"> <Button Content="Button1"/> <Button Content="Button2"/> </StackPanel> <StackPanel Orientation="Horizontal"> <Button Content="Button3"/> <Button Content="Button4"/> </StackPanel> </StackPanel> ``` 上述代码创建了一个垂直布局StackPanel,在其中分别嵌套了两个水平布局StackPanel,每个水平布局中都有两个 Button。 通过使用 StackPanel,可以方便地实现控件的自动排列布局。同时,StackPanel 还提供了一些其他属性,如对齐方式和间距设置,可以根据需要进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值