XAML布局主要分为六大类:网格(Grid)、泊靠式(DockPance)、栈式面板(StankPance)、自动折叠(WrapPanel)、均分(UmiformGrid)、画布(Canvas)。
首先Grid布局,它的子控件放在一个一个定义好的小格子里,就像一个网格,其与其他几个布局相比功能最多也最为复杂,而放在Grid中的控件元素都必须显示采用附加属性语法定义其所在的行和列。它的特点有:
- 可以定义任意数量的行和列非常灵活。
- 行的高度和列的宽度可以使用绝对值、相对比例或自动调整的方式进行精确设定,并可以设置最大和最小值。
- 内部元素可以设置自己所在的行和列Grid.Row和Grid.Column,还可以设置自己纵向跨几行Grid.RowSpan,横向跨几列 Grid.ColumnSpan。
- 可以设置Children元素的对齐方向:水平HorizontalAlignment,垂直VerticalAlignment。
下图为Grid的Row(行)和Column(列)用法: