Gets the size that this element computed during the measure pass of the layout process.
Assembly: PresentationCore (in PresentationCore.dll)
'Declaration Public ReadOnly Property DesiredSize As Size 'Usage Dim instance As UIElement Dim value As Size value = instance.DesiredSize
Property ValueType: System.Windows.Size
The computed size, which becomes the desired size for the arrange pass.
The value returned by this property will only be a valid measurement if the value of the IsMeasureValid property is true.
is typically checked as one of the measurement factors when you implement layout behavior overrides such as ArrangeOverride, MeasureOverride, or OnRender (in the OnRender case, you might check RenderSize instead, but this depends on your implementation). Depending on the scenario, might be fully respected by your implementation logic, constraints on might be applied, and such constraints might also change other characteristics of either the parent element or child element. For example, a control that supports scrollable regions (but chooses not to derive from the WPF framework-level controls that already enable scrollable regions) could compare available size to . The control could then set an internal state that enabled scrollbars in the UI for that control. Or, could potentially also be ignored in certain scenarios.
Protected Overrides Function MeasureOverride(ByVal availableSize As System.Windows.Size) As System.Windows.Size Dim panelDesiredSize As New Size() For Each child As UIElement In InternalChildren child.Measure(availableSize) panelDesiredSize = child.DesiredSize Next Return panelDesiredSize End Function
Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.