开局一张图,内容全靠...,本系列的文章, 主要针对刚入门、亦或是从 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的尺寸, 否则超出的部分不可见。

  • WrapPanel

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

  • DockPanel

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

  • Grid

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

  • Canvas

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

WPF布局介绍(1)的更多相关文章

  1. WPF Step By Step 完整布局介绍

    WPF Step By Step 完整布局介绍 回顾 上一篇,我们介绍了基本控件及控件的重要属性和用法,我们本篇详细介绍WPF中的几种布局容器及每种布局容器的使用场景,当 然这些都是本人在实际项目中的 ...

  2. ( 转)WPF面板布局介绍Grid、StackPanel、DockPanel、WrapPanel

    回顾 上一篇,我们介绍了基本控件及控件的重要属性和用法,我们本篇详细介绍WPF中的几种布局容器及每种布局容器的使用场景,当 然这些都是本人在实际项目中的使用经验,可能还存在错误之处,还请大家指出. 本 ...

  3. WPF快速入门系列(1)——WPF布局概览

    一.引言 关于WPF早在一年前就已经看过<深入浅出WPF>这本书,当时看完之后由于没有做笔记,以至于我现在又重新捡起来并记录下学习的过程,本系列将是一个WPF快速入门系列,主要介绍WPF中 ...

  4. WPF 布局总结

    一.WPF布局原理 WPF窗口只能包含单个元素,为在WPF窗口中放置多个元素,需要放置一个容器,让后在容器中添加其他元素.“理想的”WPF窗口需遵循以下几个原则: 1.不应显示设定元素的尺寸.元素应当 ...

  5. 浅谈 WPF布局

    我们首先来了解一下图形化用户界面(Graphic User Interface)也就是我们常常听到的GUI.举个简单的例子,同样是数据,我们可以用控制台程序加格式控制符等输出,但是这些都不如GUI来的 ...

  6. WPF布局控件常用属性介绍

    WPF布局控件常用属性介绍 其它 | 作者:慧都控件网 | 2011-04-06 13:41:57| 阅读 0次 有用(0) 评论(0)   概述:WPF布局控件都是派生自System.Windows ...

  7. 对比MFC资源文件谈谈WPF布局方式

    对比MFC资源文件谈谈WPF布局方式 MFC方式 对于传统的MFC基于UI的应用程序设计通常分两步走,首先是设计UI,使用的是RC文件,然后是代码文件,对RC文件进行操作,如下面Figure 1 的基 ...

  8. 学习WPF——WPF布局——了解布局容器

    WPF布局工作内部原理 WPF渲染布局时主要执行了两个工作:测量和排列 测量阶段,容器遍历所有子元素,并询问子元素所期望的尺寸 排列阶段,容器在合适的位置放置子元素,并设置元素的最终尺寸 这是一个递归 ...

  9. WPF布局系统[转]

    转自:http://www.cnblogs.com/niyw/archive/2010/10/31/1863908.html前言 前段时间忙了一阵子Google Earth,这周又忙了一阵子架构师论文 ...

随机推荐

  1. Minimum Barrier Salient Object Detection at 80 FPS 论文阅读笔记

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  2. 3.2 Spark运行架构

    一.基本概念 1.RDD Resillient Distributed Dataset 弹性分布式数据集 2.DAG 反映RDD之间的依赖关系 3.Executor 进程驻守在机器上面,由进程派生出很 ...

  3. JS高阶---显式原型和隐式原型

    前言: 1.函数对象即函数的prototype原型属性指向原型对象,在创建函数时便存在,默认为空Object 2.实例对象的__proto__隐式原型在实例化创建实例时产生,值等于构造函数的显式pro ...

  4. 为什么tcp的TIME_WAIT状态要维持2MSL

    本文主要分析为什么TIME_WAIT状态的持续时间是2MSL而不是1MSL,3MSL或其它的时长,而不会详细描述为什么需要TIME_WAIT状态. 阅读本文需要的预备知识: 了解TCP协议的状态变迁: ...

  5. ASP.NET开发实战——(五)ASP.NET MVC & 分层

    上一篇文章简要说明了MVC所代表的含义并提供了详细的项目及其控制器.视图等内容的创建步骤,最终完成了一个简单ASP.NET MVC程序. 注:MVC与ASP.NET MVC不相等,MVC是一种开发模式 ...

  6. 洛谷 P5021 [NOIP2018]赛道重建

    洛谷 P5021 [NOIP2018]赛道重建 传送门 思路 思路就是常规的思路,所以就不说了--我就是来记录一下我的\(AC\)之路的,真的是太爽了 没错--我也是一个个打的部分分,最后终于AC的, ...

  7. [LeetCode] 767. Reorganize String 重构字符串

    Given a string S, check if the letters can be rearranged so that two characters that are adjacent to ...

  8. shell脚本特殊变量($0、$1、$2、 $?、 $# 、$@、 $*)

    $0        Shell本身的文件名$1-$n 添加到Shell的各参数值.$1是第1参数.$2是第2参数…$$        Shell本身的PID(ProcessID) $!         ...

  9. java 多行注释

    public class Sample { public static void main(String[] args) { // java compiler ignores the comment ...

  10. k8s集群-node节点设置不可调度或者删除node节点

    在master 执行1, 不可调度 kubectl cordon k8s-node- kubectl uncordon k8s-node- #取消 2,驱逐已经运行的业务容器 kubectl drai ...