ArrayExtension.ProvideValue(IServiceProvider) 方法

定义

返回一个数组,其大小为 Items 值中提供的对象数。

public:
 override System::Object ^ ProvideValue(IServiceProvider ^ serviceProvider);
public override object ProvideValue (IServiceProvider serviceProvider);
override this.ProvideValue : IServiceProvider -> obj
Public Overrides Function ProvideValue (serviceProvider As IServiceProvider) As Object

参数

serviceProvider
IServiceProvider

可为标记扩展提供服务的对象。

返回

创建的数组,或 null。

例外

处理未提供有效 Type 的数组。

- 或 -

数组的已声明 Type 与其一个或多个 Items 值之间存在类型不匹配。

注解

此方法支持标记扩展行为,并且通常不会由用户代码调用,除非该用户代码实现 XAML 处理行为。

XAML 处理器实现使用此方法在创建对象期间正确处理 x:Array 元素。 这依赖于 XAML 处理器在处理任何 MarkupExtension 内容并调用其 ProvideValue 实现时的一般行为。

此实现不依赖于基于传递的任何 serviceProvider服务。 但是,它依赖于扩展使用传输的 CLR 概念,同时使用.NET Framework XAML 服务的默认 XAML 架构上下文进行处理。

有关标记扩展的详细信息,请参阅 XAML 的标记扩展概述

适用于