MarkupExtension 클래스

정의

.NET XAML 서비스 및 기타 XAML 판독기와 XAML 작성기에서 지원할 수 있는 XAML 태그 확장 구현에 대한 기본 클래스를 제공합니다.Provides a base class for XAML markup extension implementations that can be supported by .NET XAML Services and other XAML readers and XAML writers.

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

설명

태그 확장은 XAML의 태그 요소 또는 문자열 특성 값의 입력을 기반으로 하 여 개체를 호출자에 게 반환 합니다.Markup extensions return objects to callers, based on the input of string attribute values or markup elements in XAML. 태그 확장은 형식 변환기만 수행할 수 있는 것 보다 더 복잡 한 방식으로 개체를 반환 합니다.Markup extensions return objects in a more sophisticated way than type converters alone can accomplish. 형식 또는 멤버에 연결 된 형식 변환기 구현이 있으므로 XAML 개체 작성기에서 형식 변환기를 호출 합니다.A XAML object writer invokes a type converter because a type or member has a type converter implementation associated with it. 참조의 CLR 프레임에서이는 형식 또는 멤버에 특성이 지정 됨을 의미 TypeConverterAttribute 합니다.From the CLR frame of reference, this means that a type or member is TypeConverterAttribute attributed. Xaml 형식 시스템 관점에서이는 XAML 형식 또는 XAML 멤버에 해당 속성에 대 한 값이 있음을 의미 합니다 TypeConverter .From the XAML type system perspective, this means that a XAML type or a XAML member has a value for its TypeConverter property. 형식 변환기의 호출은 형식 또는 속성 정의에 연결 되며, 이러한 경우에는 항상 XAML 처리에 의해 호출 됩니다.The invocation of a type converter is tied to the type or property definition, and is always invoked by XAML processing for these cases. 반면, 태그 확장 사용자 코드와 사용자가 생성 한 태그의 제어 이며 애플리케이션 시나리오를 요구할 때마다 적용 될 수 있습니다.In contrast, a markup extension is more under the control of user code and user-produced markup, and can be applied whenever an application scenario demands it. 태그 확장을 호출할 수 있으며 태그 확장의 반환 형식을 해당 값에 할당할 수 있는 경우 다른 형식 멤버 값을 설정 하는 데 사용할 수 있습니다.A markup extension can be invoked and can be used for setting different type-member values, so long as the markup extension's return type is assignable to that value.

사용자 지정 태그 확장을 만드는 방법에 대 한 자세한 내용은을 참조 하십시오 ProvideValue .For information on creating a custom markup extension, see ProvideValue. 일반적인 태그 확장에 대 한 자세한 내용은 XAML 태그 확장 개요를 참조 하세요.For more information on markup extensions in general, see Markup Extensions for XAML Overview. WPF에서 빌드하고 XAML 용 태그 확장을 사용 하거나 만드는 경우 다른 관련 정보는 토픽 태그 확장 및 WPF XAML항목에서 찾을 수 있습니다.If you are building on WPF and using or creating markup extensions for XAML, other relevant information can be found in the topic Markup Extensions and WPF XAML.

ProvideValue각 태그 확장 구현의 메서드는 IServiceProvider 런타임에 컨텍스트를 제공할 수 있는를 사용할 수 있습니다.The ProvideValue method of each markup extension implementation can use an IServiceProvider at run time that can provide context. IServiceProvider그런 다음 또는와 같은 정보를 전달 하는 특정 서비스에 대해 쿼리 IProvideValueTarget IXamlTypeResolver 합니다.This IServiceProvider is then queried for specific services that pass information, such as IProvideValueTarget or IXamlTypeResolver. 태그 확장에 대 한 서비스 컨텍스트에 대 한 자세한 내용은 형식 변환기 및 태그 확장에 사용할 수 있는 서비스 컨텍스트를 참조 하세요.For more information on service contexts for a markup extension, see Service Contexts Available to Type Converters and Markup Extensions.

파생 클래스는 MarkupExtensionReturnTypeAttribute 태그 확장의 구현에서 사용할 수 있는 가장 구체적인 반환 형식을 소비자에 게 알리기 위해로 특성을 지정 해야 합니다 ProvideValue .Derived classes should be attributed with MarkupExtensionReturnTypeAttribute to inform consumers of the most specific return type available from the markup extension's ProvideValue implementation.

생성자

MarkupExtension()

MarkupExtension에서 파생된 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of a class derived from MarkupExtension.

메서드

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.Determines whether the specified object is equal to the current object.

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

기본 해시 함수로 작동합니다.Serves as the default hash function.

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

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

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

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

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

파생 클래스에서 구현된 경우 이 태그 확장의 대상 개체 속성에 대한 값으로 제공된 개체를 반환합니다.When implemented in a derived class, returns an object that is provided as the value of the target property for this markup extension.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

적용 대상

추가 정보