This documentation is archived and is not being maintained.

ArrayExtension.ProvideValue Method

Returns an array that is sized to the number of objects supplied in the Items values.

Namespace:  System.Windows.Markup
Assembly:  System.Xaml (in System.Xaml.dll)

public override Object ProvideValue(
	IServiceProvider serviceProvider


Type: System.IServiceProvider
An object that can provide services for the markup extension.

Return Value

Type: System.Object
The created array, or null.


Processed an array that did not provide a valid Type.


There is a type mismatch between the declared Type of the array and one or more of its Items values.

This method supports markup extension behavior and is not typically called by user code, unless that user code implements XAML processing behavior.

A XAML processor implementation uses this method for proper handling of x:Array elements during object creation. This relies on general behavior for XAML processors when they process any MarkupExtension and call its ProvideValue implementation.

This implementation does not rely on any services based on the passed serviceProvider. However, it does rely on CLR concepts as transmitted by the extension's use while processing with the default XAML schema context for .NET Framework XAML Services.

For more information on markup extensions, see Markup Extensions for XAML Overview.

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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