StaticExtension.ProvideValue(IServiceProvider) Méthode

Définition

Retourne une valeur d’objet à définir sur la propriété où vous appliquez cette extension. Pour StaticExtension, la valeur de retour est la valeur statique évaluée pour le membre statique demandé.

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

Paramètres

serviceProvider
IServiceProvider

Objet qui peut fournir des services pour l’extension de balisage. Le fournisseur de services doit fournir un service qui implémente un programme de résolution de type (IXamlTypeResolver).

Retours

Valeur statique à définir sur la propriété où l’extension est appliquée.

Exceptions

La member valeur de l’extension est null au moment de l’évaluation.

Une partie de la member chaîne n’a pas analysé correctement

- ou -

serviceProvider n’a pas fourni de service pour IXamlTypeResolver

- ou -

member la valeur n’a pas été résolue en membre statique.

serviceProvider a la valeur null.

Remarques

Cette méthode prend en charge les fonctionnalités de langage XAML et n’est généralement pas destinée à être appelée directement. L’implémentation du processeur XAML utilise cette méthode pour gérer correctement les valeurs d’extension lors de la x:Static création de l’objet.

Cette implémentation s’appuie sur les services basés sur le passé serviceProvider. serviceProvider ne doit pas être null. L’objet serviceProvider est censé retourner un service pour IXamlTypeResolver. Dans le scénario normal d’utilisation par les lecteurs XAML et les enregistreurs XAML par défaut, un fournisseur de services approprié est disponible. Un contexte de schéma XAML non valide peut avoir l’effet secondaire du mappage de type cassant et donc du IXamlTypeResolver service.

Dans .NET Framework 4, StaticExtension prend en charge un autre mode dans lequel il peut retourner un membre statique basé sur Member étant le nom de membre simple et son type propriétaire fourni en tant que MemberType, plutôt que Member fournissant un nom complet sous la forme type.member. Le programme de résolution de type agit toujours, mais dans ce cas, le Member programme de résolution de MemberType type est essentiellement combiné : memberFullName = MemberType.FullName + "." + Member.

S’applique à