MarkupExtension MarkupExtension MarkupExtension MarkupExtension Class

定義

.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
継承
MarkupExtensionMarkupExtensionMarkupExtensionMarkupExtension
派生

注釈

マークアップ拡張機能は、文字列の属性値または 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. 一般にマークアップ拡張機能の詳細については、次を参照してください。 Markup Extensions for XAML Overviewします。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. マークアップ拡張機能のサービス コンテキストの詳細については、次を参照してください。 Service Contexts Available to Type Converters and Markup Extensionsします。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() MarkupExtension() MarkupExtension()

MarkupExtension から派生したクラスの新しいインスタンスを初期化します。Initializes a new instance of a class derived from MarkupExtension.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ProvideValue(IServiceProvider) ProvideValue(IServiceProvider) ProvideValue(IServiceProvider) 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() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象

こちらもご覧ください