代码改变世界

WPF ArrangeOverride与MeasureOverride

2013-07-17 19:47  残月星辰  阅读(582)  评论(0编辑  收藏  举报

1.MeasureOverride  是FrameworkElement.MeasureOverride 方法

当重写在派生类中,单位是对于子元素所需要布局的大小并确定FrameworkElement

之间的派生类。

FrameworkElement 类

protected virtual Size MeasureOverride(Size availableSize)

参数:availableSize 类型:System.Windows.Size

        此元素可为子元素的大小。

返回值        类型:System.Windows.Size

该范围此元素确定它在布局过程中,需要,具体取决于其子元素大小的计算。

重写实现组件的自定义格式调整大小行为 MeasureOverride,实现它要执行以下操作

1.对于您的布局的一部分子元素的特定集合,对每个子元素的 Measure。

2.立即在子任务的进度结果 DesiredSize(在Measure后的属性调用)。

3.计算 Net希望父级的大小作为子元素的度量。

MeasureOverride的返回值应为元素自己的所需大小,然后将为当前元素的父元素输入的执行度量。此同一进程通过布局系统继续,知道页的跟元素为止。

此过程中,元素比则最初availableSize可能返回更大的DesiredSize范围指示的子集子元素需要更多空间。这将在您的实现通过引入一个可滚动区域,通过调整父控件,通过建立堆叠顺序某种方式,或者测量或排列的内容任意数量的解决方案可能会处理。