WPF XAML 的布局

应用程序界面设计中,合理的元素布局至关重要,它可以方便用户使用,并将信息清晰合理地展现给用户。WPF提供了一套功能强大的工具-面板(Panel),来控制用户界面的布局。你可以使用这些面板控件来排布元素。如果内置布局控件不能满足需要的话,还可以创建自定义的布局元素
WPF常用的容器组件主要有StackPanel(栈面板)、WrapPanel(环绕面板)。DockPanel(停靠面板)、Canvas(画布)、Grid(网格面板)UniformGrid(均布网格)。等几类,每类容器组件的特点如下表描述:

容器名称 布局特点
StackPanel(栈面板) 水平或垂直的放置内容元素
WrapPanel(环绕面板) 自动换行的方式放置内容元素
DockPanel(停靠面板) 按照Top、left、right等方式布局内容元素,最后一个元素充满可利用的容器空间
Canvas(画布) 在内容元素中设置附加属性Top、Left,根据Top、Left布局内容元素
Grid(网格面板 按行列排列内容,如果没有特别说明行列则内容充满容器,多个内容则重叠充满内容
UniformGrid(均布网格) 自动根据容器大小,自动采用行列方式排列内容元素

一、 StackPanel(栈面板),可以将元素排列成一行或者一列,其特点是:每个元素各占一行或者一列,
XAML的代码如下



        
        
        
    
效果如下图

WPF XAML 的布局_第1张图片

二、 WrapPanel(环绕面板)
rapPanel布局面板将各个控件从左至右按照行或列的顺序罗列,当长度或高度不够时就会自动调整进行换行,后续排序按照从上至下或从右至左的顺序进行。
Orientation——根据内容自动换行。当Orientation属性的值设置为 Horizontal:元素是从左向右排列的,然后自上至下自动换行。当Orientation属性的值设置为Vertical:元素是从上向下排列的,然后从左至右自动换行。
XAML代码

 
    
    
    
    
    
 

WPF XAML 的布局_第2张图片三、 DockPanel(停靠面板)
DockPanel定义一个区域,在此区域中,您可以使子元素通过描点的形式排列,这些对象位于 Children 属性中。停靠面板类似于WinForm中控件的Dock属性。DockPanel会对每个子元素进行排序,并将根据指定的边进行停靠,多个停靠在同侧的元素则按顺序排序。在DockPanel中,指定停靠边的控件,会根据定义的顺序占领边角,所有控件绝不会交叠。
XAML 代码


        
        
        
        
        

效果图
WPF XAML 的布局_第3张图片四、 Canvas(画布)
画布,用于完全控制每个元素的精确位置。他是布局控件中最为简单的一种,直接将元素放到指定位置,主要来布置图面。使用Canvas,必须指定一个子元素的位置(相对于画布),否则所有元素都将出现在画布的左上角。调整位置用Left、Right、Top和Bottom四个附加属性。
XAML 代码


        
        
        

五、 Grid(网格面板)


        
        
        
            
            
            
            
        
        
        
            
            
            
            
            
            
        
        
        
        
        
        


WPF XAML 的布局_第4张图片六、UniformGrid(均布网格)
UniformGrid 就是Grid的简化版,每个单元格的大小相同,不需要定义行列集合。每个单元格始终具有相同的大小,每个单元格只能容纳一个控件,将自动按照定义在其内部的元素个数,自动创建行列,并通常保持相同的行列数。


        
        
        
        

WPF XAML 的布局_第5张图片

你可能感兴趣的:(WPF,笔记)