다음을 통해 공유


MarkupExtension 클래스

정의

.NET XAML 서비스 및 기타 XAML 판독기와 XAML 작성기에서 지원할 수 있는 XAML 태그 확장 구현에 대한 기본 클래스를 제공합니다.

public ref class MarkupExtension abstract
public abstract class MarkupExtension
type MarkupExtension = class
Public MustInherit Class MarkupExtension
상속
MarkupExtension
파생

설명

태그 확장은 XAML에서 문자열 특성 값 또는 태그 요소의 입력에 따라 호출자에게 개체를 반환합니다. 태그 확장은 형식 변환기만으로 수행할 수 있는 것보다 더 정교한 방식으로 개체를 반환합니다. XAML 개체 작성기는 형식 또는 멤버에 연결된 형식 변환기 구현이 있으므로 형식 변환기를 호출합니다. 이는 참조의 CLR 프레임에서 형식 또는 멤버가 특성이 됨 TypeConverterAttribute 을 의미합니다. XAML 형식 시스템 관점에서 볼 때 XAML 형식 또는 XAML 멤버의 속성 값 TypeConverter 이 있음을 의미합니다. 형식 변환기의 호출은 형식 또는 속성 정의에 연결되며 이러한 경우 XAML 처리에서 항상 호출됩니다. 반면, 태그 확장 사용자 코드와 사용자가 생성 한 태그의 제어 이며 애플리케이션 시나리오를 요구할 때마다 적용 될 수 있습니다. 태그 확장의 반환 형식을 해당 값에 할당할 수 있는 한 태그 확장을 호출할 수 있으며 다른 형식 멤버 값을 설정하는 데 사용할 수 있습니다.

사용자 지정 태그 확장을 만드는 방법에 대한 자세한 내용은 를 참조하세요 ProvideValue. 일반적인 태그 확장에 대한 자세한 내용은 XAML용 태그 확장 개요를 참조하세요. WPF에서 빌드하고 XAML에 대한 태그 확장을 사용하거나 만드는 경우 태그 확장 및 WPF XAML 항목에서 다른 관련 정보를 찾을 수 있습니다.

각 태그 확장 구현의 메서드는 ProvideValue 컨텍스트를 IServiceProvider 제공할 수 있는 런타임에 를 사용할 수 있습니다. IServiceProvider 그런 다음, 또는 IXamlTypeResolver와 같은 IProvideValueTarget 정보를 전달하는 특정 서비스에 대해 쿼리됩니다. 태그 확장의 서비스 컨텍스트에 대한 자세한 내용은 형식 변환기 및 태그 확장에 사용할 수 있는 서비스 컨텍스트를 참조하세요.

파생 클래스는 태그 확장 ProvideValue 의 구현에서 사용할 수 있는 가장 구체적인 반환 형식을 소비자에게 알리기 위해 로 특성 MarkupExtensionReturnTypeAttribute 화되어야 합니다.

생성자

MarkupExtension()

MarkupExtension에서 파생된 클래스의 새 인스턴스를 초기화합니다.

메서드

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ProvideValue(IServiceProvider)

파생 클래스에서 구현된 경우 이 태그 확장의 대상 개체 속성에 대한 값으로 제공된 개체를 반환합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상

추가 정보