DataTemplateSelector クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
アプリケーション レベルでカスタム テンプレート選択ロジックを有効にします。
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DataTemplateSelector
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DataTemplateSelector : IElementFactory
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class DataTemplateSelector
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class DataTemplateSelector : IElementFactory
Public Class DataTemplateSelector
Public Class DataTemplateSelector
Implements IElementFactory
See Remarks
- 継承
- 属性
- 実装
Windows の要件
デバイス ファミリ |
Windows 10 (10.0.10240.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v1.0 で導入)
|
注釈
データ テンプレートの詳細については、 DataTemplate クラスと Item コンテナーとテンプレートに関するページを参照してください。
基本 DataTemplateSelector クラスは、XAML のオブジェクト要素として使用されません。 ただし、カスタム DataTemplateSelector を派生させ、カスタム クラスとその名前空間/アセンブリのプレフィックスをマップ xmlns
し、XAML の Resources ブロックで定義されているカスタム クラスのインスタンスを参照するのが一般的なシナリオです。 これにより、 によって x:Key
カスタム テンプレート セレクター クラスを参照し、その参照を使用して、XAML テンプレートの ItemTemplateSelector やビジュアル状態などのプロパティの値を設定できます。
DataTemplateSelector の呼び出し可能なメソッドは、2 つの SelectTemplate オーバーロードです。 DataTemplateSelector のオーバーライド可能なメソッドは、2 つの SelectTemplateCore オーバーロードです。 有効な DataTemplateSelector サブクラスを定義するには、SelectTemplateCore(Object) と SelectTemplateCore(Object, DependencyObject) の実装を指定します。 これらのすべてのメソッドは、通常、それを取得するために呼び出されたメソッドの入力に適した特定の選択肢である DataTemplate インスタンスを返します。
アプリ コードでは、通常 、SelectTemplate メソッドは呼び出されません。メソッドが存在するため、インフラストラクチャは、 ItemsControl.ItemsTemplateSelector などのプロパティ値から DataTemplateSelector インスタンスを使用して適切なテンプレートを選択しながらそれを呼び出すことができます。
バージョン履歴
Windows のバージョン | SDK バージョン | 追加された値 |
---|---|---|
1809 | 17763 | GetElement |
1809 | 17763 | RecycleElement |
コンストラクター
DataTemplateSelector() |
DataTemplateSelector クラスの新しいインスタンスを初期化します。 |
メソッド
GetElement(ElementFactoryGetArgs) |
SelectTemplate によって返される DataTemplate で宣言された UIElement オブジェクトの既存のインスタンスを作成または取得します。 |
RecycleElement(ElementFactoryRecycleArgs) |
GetElement を使用して作成された UIElement オブジェクトをリサイクルします。 |
SelectTemplate(Object) |
特定の項目の特定の DataTemplate を返します。 |
SelectTemplate(Object, DependencyObject) |
特定の項目とコンテナーの特定の DataTemplate を返します。 |
SelectTemplateCore(Object) |
派生クラスによって実装された場合、特定の項目またはコンテナーの特定の DataTemplate を返します。 |
SelectTemplateCore(Object, DependencyObject) |
派生クラスによって実装された場合、特定の項目またはコンテナーの特定の DataTemplate を返します。 |