WPF布局介绍(1)

开局一张图,内容全靠...,本系列的文章, 主要针对刚入门、亦或是从 winform/bs转过来的开发人员快速入门的指南, 相对于其它一些文章中会详细的从项目如何建立到其实现的原理及组成部分, 本系列的文章则旨在如果快速的构建: 从布局、样式、触发器、绑定、显示、MVVM架构一系列的阶段学习,构建一个基础的呈现以达到学习的目的。

WPF相关资料合集 (含书籍、框架、及开源UI组件等)


WPF布局基础

  • WPF布局原则
    • 一个窗口中只能包含一个元素
    • 不应显示设置元素尺寸
    • 不应使用坐标设置元素的位置
    • 可以嵌套布局容器
  • WPF布局容器
    • StackPanel: 水平或垂直排列元素、Orientation属性分别: Horizontal / Vertical
    • WrapPanel : 水平或垂直排列元素、针对剩余空间不足会进行换行或换列进行排列
    • DockPanel : 根据容器的边界、元素进行Dock.Top、Left、Right、Bottom设置
    • Grid : 类似table表格、可灵活设置行列并放置控件元素、比较常用
    • Canvas : 使用固定的坐标设置元素的位置、不具备锚定停靠等功能。

布局容器详解

  • StackPanel

    StackPanel主要用于垂直或水平排列元素、在容器的可用尺寸内放置有限个元素,元素的
    尺寸总和(长/高)不允许超过StackPanel的尺寸, 否则超出的部分不可见。
    1161656-20190817161544750-1520158829.png

  • WrapPanel

    WrapPanel默认排列方向与StackPanel相反、WrapPanel的Orientation默认为Horizontal。
    WrapPanel具备StackPanel的功能基础上具备在尺寸变更后自动适应容器的宽高进行换行换列处理。
    1161656-20190817161524178-1524938850.png

  • DockPanel

    默认DockPanel中的元素具备DockPanel.Dock属性, 该属性为枚举具备: Top、Left、Right、Bottom。
    默认情况下, DockPanel中的元素不添加DockPanel.Dock属性, 则系统则会默认添加 Left。
    DockPanel有一个LastChildFill属性, 该属性默认为true, 该属性作用为, 当容器中的最后一个元素时, 默认该元素填充DockPanel所有空间。
    1161656-20190817161456533-237089632.png

  • Grid

    学过web的老弟应该知道table表格, 而Grid与其类似, Grid具备分割空间的能力。
    RowDefinitions / ColumnDefinitions 用于给Grid分配行与列。
    ColumnSpan / RowSpan 则用于设置空间元素的 跨列与阔行。
    1161656-20190817161655841-623745756.png

1161656-20190817161120357-1187850216.png

  • Canvas

    该容器就相当于一个 "地图", 包含内的所有控件元素, 则都通过使用XY来定位, 由于不太常用, 所以简单掠过。

转载于:https://www.cnblogs.com/zh7791/p/11369020.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值