Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

UIElement.OnChildDesiredSizeChanged Method (UIElement)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Supports layout behavior when a child element is resized.

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

protected virtual void OnChildDesiredSizeChanged(
	UIElement child


Type: System.Windows.UIElement

The child element that is being resized.

This method is typically not called by your application code. It is exposed so that derived element classes can make further checks on their own possibly invalid layout state. Classes could also attempt optimizations to minimize the processing time for a layout pass based on size changes to child elements. An example derived element class that implements OnChildDesiredSizeChanged is the Grid control.

Notes to Inheritors:

The OnChildDesiredSizeChanged method has the default implementation of calling InvalidateMeasure on itself. A typical implementation would be: do whatever optimization your own element supports, and then typically call base OnChildDesiredSizeChanged from at least one of the code branches (the one that indicated "dirty" state per your own measure caching logic).

This method is only called in the layout processing if it was the child itself that originated the size changes. Otherwise, if the parent element initiates the Measure pass, according to the layout system rules, the parent is recalculating layout already. The layout system processes layout in the order of child-to-parent, so no return to parent element sizing from the child element layout calls is necessary.

.NET Framework
Available since 3.0
Return to top
© 2018 Microsoft