MarkupExtension Class

Definition

.NET Framework XAML 서비스 및 다른 XAML 판독기와 XAML 작성기에서 지원될 수 있는 XAML 태그 확장명 구현에 대한 기본 클래스를 제공합니다.Provides a base class for XAML markup extension implementations that can be supported by .NET Framework 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
Inheritance
MarkupExtension
Derived

Remarks

태그 확장의 문자열 특성 값 또는 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.

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

Constructors

MarkupExtension()

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

Methods

Equals(Object)

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

(Inherited from Object)
GetHashCode()

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

(Inherited from Object)
GetType()

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

(Inherited from Object)
MemberwiseClone()

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

(Inherited from 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.

(Inherited from Object)

Applies to

See also