wpf-布局控件

1、Grid

 wpf-布局控件

 

 

1.1拆分Grid表格行和列

  RowDefinitions : 拆分行

  ColumnDefinitions:拆分列

1.2指定行(列)的高度(宽度)

  在Grid中,有三种指定宽度方法

  固定值:通过制定一个数值,上图中的1 。

  自适应:通过Auto关键字指定,根据内部控件自适应。

  平分值:通过 数字* 的格式指定

        公式 = (总宽度 – 固定值 – 自适应) /  *数量之和  *  * 数量

1.3指定控件所属位置

  Grid.Column:指定所属行,默认为0.

  Grid.Row   :指定所属列,默认为0

 

2、StackPanel

 

 wpf-布局控件

 

 

2.1 Orientation 排列方法,垂直还是水平
  Horizontal     :按照水平排列,内部控件自适应高度,除非指定高度。

  Vertical(默认) :按照垂直排列,内部控件自适应宽度,除非指定宽度。

2.2 FlowDirection 排列方向

  LeftToRight(默认):从左向右排列

  RightToLeft      :从右向左排列

2.3 注意:

  在Horizontal 中 HorizontalAlignment 参数无效

  在Vertical   中 VerticalAlignment   参数无效

 

3 UniformGrid

 wpf-布局控件

 

 

   UniformGrid 相当于简化版的Grid。

3.1、设置行和列

  Columns:拆分成几列

  Rows   :拆分成几行

  一旦设置了行和列,控件会划分出区域,内部控件按照顺序从左向右逐一排列,一旦数量大于规定的表格数,多余控件会移除。

3.2 不设置行和列

   根据内部控件个数自动的设置行和列。需要注意的一点就是,如果控件正好排列了N行,那么,控件会分配N+1行数据。

 

4 DockPannel

 wpf-布局控件

 

 

DockPanel 是具有停靠功能的布局控件,其内部控件根据附加属性指定停靠位置。

4.1 停靠的长度或宽度计算顺序依次为左右上下中。

4.2 最后一个控件的数量自适应剩余空间。

4.3 如果设置了 LastChildFill="False" ,那么就没有控件自适应空间。

 

5 WrapPanel

 wpf-布局控件

 

 

WrapPanel 跟StackPanel有点类似,不同之处在于其根据内部控件大小自动换行。其

Orientation 和 FlowDirection 可以参考stackPanel。

 

6  ScrollViewer

 

 wpf-布局控件

ScrollViewer 是一个带滚动条的面板,内部仅支持单控件,如果想放置多个控件,可以防止其他的布局控件。HorizontalScrollBarVisibility 和 VerticalScrollBarVisibility 设置成 Auto,滚动条会自动的根据内部决定是否显示。

 

7 Border

 wpf-布局控件

 

 

 

Border作为边框控件,经常用于其他控件中,主要做边框处理。

BorderBrush:边框颜色

BorderThickness:边框宽度

CornerRadius:圆角弧度

以上是border中比较常用的参数。

注意:border如果放在StackPanel中,它会被当做一个排列控件。

wpf-布局控件

上一篇:Identityserver4 .net core3 有证书,双击没问题,运行到windows services服务时报错的解决方式


下一篇:基于WindowImplBase 更简单,才是标准的