Stretch Enumeration

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Describes how content is resized to fill its allocated space.

Namespace:  System.Windows.Media
Assembly:  System.Windows (in System.Windows.dll)
XMLNS for XAML: Not mapped to an xmlns.

Syntax

Public Enumeration Stretch
public enum Stretch
<object property="enumMemberName"/>

Members

Member name Description
None The content preserves its original size.
Fill The content is resized to fill the destination dimensions. The aspect ratio is not preserved.
Uniform The content is resized to fit in the destination dimensions while it preserves its native aspect ratio.
UniformToFill The content is resized to fill the destination dimensions while it preserves its native aspect ratio. If the aspect ratio of the destination rectangle differs from the source, the source content is clipped to fit in the destination dimensions.

Remarks

The following illustration shows the different Stretch values. Keep in mind that different Panel containers and different layout properties (such as VerticalAlignment and HorizontalAlignment) can affect the final rendering. This illustration is of an Image object in a Grid with VerticalAlignment and HorizontalAlignment set to Center.

Stretch values

Note

Although unintuitive, in some cases you can get better performance by setting Stretch properties to Fill instead of other values, including None. When you use Stretch = Fill, there is no potential clipping happening which adds extra edges. Any other type of stretch besides Fill needs to compute layout (e.g. compute centering). You will probably not notice the difference unless you are rendering a lot of images.

Version Information

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Platforms

Windows Phone

See Also

Reference

System.Windows.Media Namespace