码迷,mamicode.com
首页 > Windows程序 > 详细

WPF中MeasureOverride ArrangeOverride 的理解

时间:2017-03-22 17:51:23      阅读:984      评论:0      收藏:0      [点我收藏+]

标签:大小   存在   article   under   work   art   自己   nbsp   tps   

1. Measure Arrange这两个方法是UIElement的方法

    MeasureOverride ArrangeOverride这两个方法是FrameworkElement的方法,FrameworkElement是UIElement的子类

    MeasureOverride传入父容器分配的可用空间,返回该容器根据其子元素大小计算确定的在布局过程中所需的大小。

    ArrangeOverride传入父容易最终分配的控件大小,返回使用的实际大小

2. MeasureOverride 用于计算本身及其子控件的大小

    ArrangeOverride用于布局本身及其子控件的位置和大小

3. WPF布局系统大概分为两步:Measure和Arrange

    Measure方法自顶而下,递归调用各子控件的Measure方法,Measure方法会把该控件所需的大小控件存在desired size属性中,控件根据各子控件的desired size 属性确定自身空间大小,并返回自己的desired size 

 

    Arrange方法发生在Measure中,传入Measure方法计算到的大小,利用控件的位置设置分配子控件的位置

 

简单来说,这两个方法一个管大小,一个管布局,都需要调用子类的Measure和Measure

 

codeproject的这篇文章讲的很条理https://www.codeproject.com/Articles/1034445/Understanding-MeasureOverride-and-ArrangeOverride

 

WPF中MeasureOverride ArrangeOverride 的理解

标签:大小   存在   article   under   work   art   自己   nbsp   tps   

原文地址:http://www.cnblogs.com/yeffyliu/p/6600897.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!