在Windows开发人员设计用户界面的方式上,WPF布局模型是一个重大改进。在WPF问世之前,Windows开发人员使用刻板的基于坐标的布局将控件放到正确位置。在WPF中,这种方式虽然可行,但已经极少使用。大多数应用程序将使用类似Web的流(flow)布局;在使用流布局模型时,控件可以扩大,并将其他控件挤到其他位置。开发人员能创建与现实分辨率和窗口大小无关的、在不同的显示器上正确缩放的用户界面;当窗口内容发生变化时,界面可调整自身,并且可以自如地处理语言的切换。要利用该系统的优势,首先需要进一步理解WPF布局模型的基本概念和假设。

一、 WPF布局原则

WPF窗口只能包含单个元素。为在WPF窗口中放置多个元素并创建更贴近实用的用户界面,需要在窗口上放置一个容器,然后再这个容器中添加其他元素。

不应显示设定元素(如控件)的尺寸。

不应使用屏幕坐标指定元素的位置。

布局容器的子元素“共享”可用的空间。

可嵌套的布局容器。

二、布局过程

WPF布局包括两个阶段:

测量(measure)阶段,在测量阶段,容器遍历所有子元素,并询问子元素它们所期望的尺寸。

排列(arrange)阶段,在排列阶段,容器在合适的位置放置子元素。

三、布局容器

所有WPF布局容器都是派生自System.Windows.Controls.Panel抽象类的面板。

最后修改:2020 年 02 月 11 日 03 : 28 PM
如果觉得我的文章对你有用,请随意赞赏