StaticExtension.ProvideValue(IServiceProvider) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt einen Objektwert zurück, der für die Eigenschaft festgelegt werden soll, auf die Sie diese Erweiterung anwenden. Bei StaticExtensiondiesem Wert handelt es sich um den statischen Wert, der für das angeforderte statische Element ausgewertet wird.
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
Parameter
- serviceProvider
- IServiceProvider
Ein Objekt, das Dienste für die Markuperweiterung bereitstellen kann. Es wird erwartet, dass der Dienstanbieter einen Dienst bereitstellt, der einen Typlöser (IXamlTypeResolver) implementiert.
Gibt zurück
Der statische Wert, der für die Eigenschaft festgelegt werden soll, auf die die Erweiterung angewendet wird.
Ausnahmen
Der member Wert für die Erweiterung ist null zum Zeitpunkt der Auswertung.
Einige Teile der member Zeichenfolge wurden nicht ordnungsgemäß analysiert.
-oder-
serviceProvider keinen Dienst für IXamlTypeResolver
-oder-
member der Wert wurde nicht in ein statisches Element aufgelöst.
serviceProvider ist null.
Hinweise
Diese Methode unterstützt XAML-Sprachfeatures und soll im Allgemeinen nicht direkt aufgerufen werden. Die XAML-Prozessorimplementierung verwendet diese Methode, um die Erweiterungswerte während der x:Static Objekterstellung ordnungsgemäß zu behandeln.
Diese Implementierung basiert auf Diensten, die auf dem übergebenen serviceProvider.
serviceProvider darf nicht sein null. Das serviceProvider Objekt wird erwartet, dass ein Dienst für IXamlTypeResolver. Im normalen Szenario der Verwendung durch die standardmäßigen XAML-Leser und XAML-Autoren ist ein geeigneter Dienstanbieter verfügbar. Ein ungültiger XAML-Schemakontext hat möglicherweise die Nebenwirkung der Zuordnung von Typen und damit des IXamlTypeResolver Diensts.
In .NET Framework 4 unterstützt StaticExtension einen alternativen Modus, in dem ein statisches Element zurückgegeben werden kann, basierend auf Member der einfache Membername und sein eigener Typ, der als MemberType angegeben wird, statt Member einen vollständigen Namen im Formular type.member anzugeben. Der Typlöser wirkt weiterhin, aber in diesem Fall sind die Member und MemberType sind im Grunde kombiniert: memberFullName = MemberType.FullName + "." + Member.