다음을 통해 공유


StaticExtension.ProvideValue(IServiceProvider) 메서드

정의

이 확장을 적용하는 속성에서 설정할 개체 값을 반환합니다. StaticExtension의 경우 반환 값은 요청된 정적 멤버에 대해 계산되는 정적 값입니다.

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

매개 변수

serviceProvider
IServiceProvider

태그 확장 서비스를 제공할 수 있는 개체입니다. 서비스 공급자는 형식 확인자(IXamlTypeResolver)를 구현하는 서비스를 제공해야 합니다.

반환

확장이 적용되는 속성에 설정할 정적 값입니다.

예외

확장에 대한 member 값은 평가 시 null입니다.

member 문자열의 일부가 제대로 구문 분석되지 않았습니다.

또는

serviceProvider에서 IXamlTypeResolver에 대한 서비스를 제공하지 않는 경우

또는

member 값이 정적 멤버로 확인되지 않은 경우

serviceProvider이(가) null인 경우

설명

이 메서드는 XAML 언어 기능을 지원하며 일반적으로 직접 호출할 수 없습니다. XAML 프로세서 구현에서는 이 메서드를 사용하여 개체를 x:Static 만드는 동안 확장 값을 올바르게 처리합니다.

이 구현은 전달된 serviceProvider를 기반으로 하는 서비스를 사용합니다. serviceProvider 은 이 아니어야 null합니다. 개체는 serviceProvider 에 대한 서비스를 반환해야 합니다 IXamlTypeResolver. 기본 XAML 판독기 및 XAML 작성기에서 사용하는 일반적인 시나리오에서는 적합한 서비스 공급자를 사용할 수 있습니다. 잘못된 XAML 스키마 컨텍스트는 형식 매핑을 중단하여 서비스를 중단하는 부작용이 IXamlTypeResolver 있을 수 있습니다.

.NET Framework 4 StaticExtension 에서는 양식 형식. 멤버에 전체 이름을 제공하는 대신 Member 단순 멤버 이름 및 로 제공된 MemberType소유 형식에 Member 따라 정적멤버를 반환할 수 있는 대체 모드를 지원합니다. 형식 확인자는 여전히 작동하지만 이 경우 MemberMemberType 는 기본적으로 결합 memberFullName = MemberType.FullName + "." + Member됩니다.

적용 대상