StaticExtension.ProvideValue(IServiceProvider) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí hodnotu objektu nastavenou na vlastnost, ve které použijete toto rozšíření. Pro StaticExtensionje návratová hodnota statická hodnota, která se vyhodnotí pro požadovaného statického člena.
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
Objekt, který může poskytovat služby pro rozšíření značek. Očekává se, že poskytovatel služeb bude poskytovat službu, která implementuje překladač typů (IXamlTypeResolver).
Návraty
Statická hodnota, která se má nastavit u vlastnosti, ve které je rozšíření použito.
Výjimky
Hodnota member
rozšíření je null
v době vyhodnocení.
Některá část řetězce se member
neanalyzovala správně.
-nebo-
serviceProvider
neposkytoval službu pro IXamlTypeResolver
-nebo-
member
hodnota se nepřeložila na statický člen.
serviceProvider
je null
.
Poznámky
Tato metoda podporuje funkce jazyka XAML a obecně není určena k přímému zavolání. Implementace procesoru XAML používá tuto metodu ke správnému x:Static
zpracování hodnot rozšíření během vytváření objektu.
Tato implementace spoléhá na služby, které jsou založené na předané serviceProvider
.
serviceProvider
nesmí být null
. Očekává serviceProvider
se, že objekt vrátí službu pro IXamlTypeResolver. V běžném scénáři použití výchozími čtečkami XAML a zapisovači XAML je k dispozici vhodný poskytovatel služeb. Neplatný kontext schématu XAML může mít vedlejší vliv na mapování typu, a tím i službu IXamlTypeResolver .
V rozhraní .NET Framework 4 podporuje alternativní režim, StaticExtension ve kterém může vrátit statický člen na Member základě jednoduchého názvu členu a jeho vlastního typu zadaného jako MemberType, namísto Member zadání úplného názvu v členu typu.
formuláře. Překladač typů stále funguje, ale v tomto případě Member se a MemberType v podstatě kombinují: memberFullName = MemberType.FullName + "." + Member
.