• WPF 布局介绍


    布局的重要性

    控件的布局对于应用程序的易用性是至关重要的。基于像素坐标的控件部署可以工作在限制性的环境中。但是,当你要在不同的显示屏或不同大小的显示设备上时就不那么理想了。WPF提供了一系列丰富的内嵌布局面板可帮助防止一些常见的不足。

    这是WPF中最常见的5种布局面板:

    基本规则

    • 防止位置固定:使用Alignment 和Mergin属性的组合在面板中部署元素
    • 防止大小固定:尽可能的设置元素的Width和Height属性为Auto
    • 不要随便滥用Canvas布局元素,只有在布局矢量图形时使用
    • 对话框中的按钮使用StackPanel布局
    • 使用GridPanel布局一个数据性表单,为Label设置列的大小为Auto,TextBox设置列为一个星号大小。
    • 在DataTemplate中使用网格布局的ItemControl布局键值列表。使用SharedSize功能同步标签的宽度。

    垂直对齐何居中对齐

    使用VerticalAlignment和HorizontalAlignment属性停靠控件。下面图形显示了不同组合的各种效果。

    Margin和Padding

    Margin和Padding 经常用于在空间的内外保留空间

    • Margin指定控件外围的空间
    • Padding指定控件里面的空间
    • 外层元素的Padding就是内层元素的Margin。

    高度和宽度

    虽然不是一个推荐的方法,但所有的控件还是提供了Height和Width属性来指定控件的大小。一个较好的方法则是使用MinHeight,MinWidth,MaxHeight和MaxHeight来定义一个允许的范围。一旦设置width和height为auto,控件将会自动设置其大小。

    溢出处理

    Clipping

    布局控件经常会剪切子控件超出面板边框的部分。这种行为可以通过设置ClipToBounds属性为True和false来控制。

    Scrolling

    当内容太多而不能在可用的大小的显示时,可以将其转换在ScrollViewer中。ScrollViewer有两个滚动条来选择显示的区域。

    滚动条的显示可以通过设置Vertical和Horizontal的ScrollbarVisibility属性来控制。 

    <ScrollViewer>
    <StackPanel>
    <Button Content="First Item" />
    <Button Content="Second Item" />
    <Button Content="Third Item" />
    </StackPanel>
    </ScrollViewer>

    相关文章:

    MSDN - The Layout System

  • 相关阅读:
    【web前端】面题整理(2)
    【web前端】前段时间的面题整理(1)
    【js】什么是函数节流与函数去抖
    【感想文】对于情绪管理,我的感悟。
    【感想文】现代人的恋爱,已经不再是过去的一生只爱一个人了
    【插件】哔哩哔哩专栏区-文章朗读插件安装
    【js】版本号对比处理方案
    【js】了解前端缓存,收获不止于此!
    【js】关于this指针-理解call、apply、bind
    【读后感】爱的五种能力
  • 原文地址:https://www.cnblogs.com/jimson/p/LayoutProperties.html
Copyright © 2020-2023  润新知