Expand Minimize

UIElement.ArrangeCore Method

Defines the template for WPF core-level arrange layout definition.

Namespace:  System.Windows
Assembly:  PresentationCore (in PresentationCore.dll)

abstract ArrangeCore : 
        finalRect:Rect -> unit  
override ArrangeCore : 
        finalRect:Rect -> unit

Parameters

finalRect
Type: System.Windows.Rect

The final area within the parent that element should use to arrange itself and its child elements.

NoteNote

Overriding this method is only appropriate if you are deriving at the WPF core-level, and you are not using the WPF framework-level layout system and FrameworkElement derived class, because FrameworkElement seals ArrangeCore. If you are using the WPF framework-level layout system, the appropriate method to override for class-specific layout arrange behavior is ArrangeOverride.

Notes to Inheritors

If you are developing elements at the WPF core level,you should override this method to give your WPF core-level element a unique arrange layout behavior, or to make proper layout decisions about the child elements of your elements. An override might be necessary if those child elements are not recognizable from a defined pattern such as an ItemCollection.

A parent element must call the class-specific Arrange on each child element, otherwise those child elements are not rendered.

ArrangeCore implementations should call the base implementation to return a size, then call the Arrange method of each visible child element, and reconcile the sizes returned by these Arrange calls with the size of the base implementation. The logic for the reconciliation aspect of a ArrangeCore implementation might vary, depending on the layout characteristics of your element. In the following example template, VisualChildren is a hypothetical property that your element might define to help enumerate its content; UIElement does not define content collections at this level, the WPF framework-level architecture defers content behavior to derived elements such as specific controls or control base classes.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft