StaticExtension.ProvideValue(IServiceProvider) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zwraca wartość obiektu ustawioną we właściwości, w której zastosowano to rozszerzenie. W przypadku StaticExtensionwartości zwracanej jest wartość statyczna, która jest oceniana dla żądanego statycznego elementu członkowskiego.
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
Parametry
- serviceProvider
- IServiceProvider
Obiekt, który może świadczyć usługi dla rozszerzenia znaczników. Oczekuje się, że dostawca usług udostępni usługę, która implementuje rozpoznawanie typów (IXamlTypeResolver).
Zwraca
Wartość statyczna ustawiana we właściwości, w której zastosowano rozszerzenie.
Wyjątki
Wartość member
rozszerzenia jest null
w momencie oceny.
member
Część ciągu nie została prawidłowo przeanalizowana
-lub-
serviceProvider
nie dostarczyła usługi dla IXamlTypeResolver
-lub-
member
wartość nie została rozpoznana dla statycznego elementu członkowskiego.
serviceProvider
to null
.
Uwagi
Ta metoda obsługuje funkcje języka XAML i zazwyczaj nie ma być wywoływana bezpośrednio. Implementacja procesora XAML używa tej metody do poprawnego x:Static
obsługi wartości rozszerzeń podczas tworzenia obiektu.
Ta implementacja opiera się na usługach opartych na przekazanym serviceProvider
obiekcie .
serviceProvider
nie może być null
. Oczekuje serviceProvider
się, że obiekt zwróci usługę dla IXamlTypeResolverelementu . W normalnym scenariuszu użycia domyślnie czytników XAML i pisarzy XAML dostępny jest odpowiedni dostawca usług. Nieprawidłowy kontekst schematu XAML może mieć efekt uboczny mapowania typu powodującego niezgodność, a tym samym IXamlTypeResolver usługi.
W .NET Framework 4 obsługuje tryb alternatywny, StaticExtension w którym może zwrócić statyczny element członkowski w oparciu o Member prostą nazwę elementu członkowskiego i jego typ będący właścicielem podany jako MemberType, zamiast Member podać pełną nazwę w elemencie typu.
formularza. Program rozpoznawania typów nadal działa, ale w tym przypadku Member element i MemberType jest w zasadzie połączony: memberFullName = MemberType.FullName + "." + Member
.