StaticExtension.ProvideValue(IServiceProvider) Methode

Definitie

Retourneert een objectwaarde die moet worden ingesteld op de eigenschap waarop u deze extensie toepast. De StaticExtensionretourwaarde is de statische waarde die wordt geëvalueerd voor het aangevraagde statische lid.

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

Parameters

serviceProvider
IServiceProvider

Een object dat services kan bieden voor de markeringsextensie. De serviceprovider verwacht een service te bieden waarmee een type-resolver (IXamlTypeResolver) wordt geïmplementeerd.

Retouren

De statische waarde die moet worden ingesteld op de eigenschap waarop de extensie wordt toegepast.

Uitzonderingen

De member waarde voor de extensie is null op het moment van evaluatie.

Een deel van de member tekenreeks is niet correct geparseerd

– of –

serviceProvider heeft geen service voor IXamlTypeResolver

– of –

member waarde is niet omgezet in een statisch lid.

serviceProvider is null.

Opmerkingen

Deze methode ondersteunt XAML-taalfuncties en is over het algemeen niet bedoeld om rechtstreeks aan te roepen. De implementatie van de XAML-processor gebruikt deze methode om de extensiewaarden correct te verwerken tijdens het x:Static maken van objecten.

Deze implementatie is afhankelijk van services die zijn gebaseerd op de doorgegeven serviceProvider. serviceProvider mag niet zijn null. Het serviceProvider object retourneert naar verwachting een service voor IXamlTypeResolver. In het normale scenario van gebruik door de standaard XAML-lezers en XAML-schrijvers is een geschikte serviceprovider beschikbaar. Een ongeldige XAML-schemacontext kan het neveneffect hebben van het toewijzen van typen die fouten veroorzaken en dus de IXamlTypeResolver service.

In .NET Framework 4 ondersteunt StaticExtension een alternatieve modus waarbij een statisch lid kan worden geretourneerd op basis van Member de eenvoudige lidnaam en het eigen type dat is opgegeven als MemberType, in plaats van Member een volledige naam op te geven in het formulier type.lid. Het type resolver werkt nog steeds, maar in dit geval worden de Member en MemberType in principe gecombineerd: memberFullName = MemberType.FullName + "." + Member.

Van toepassing op