Partager via


DataTemplateSelector Classe

Définition

Active la logique de sélection de modèle personnalisée au niveau de l’application.

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 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(Microsoft.UI.Xaml.WinUIContract), 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
Implements IElementFactory
See Remarks
Héritage
Object IInspectable DataTemplateSelector
Attributs
Implémente

Remarques

Pour plus d’informations et d’exemples, consultez sélection de modèle de données. Pour plus d’informations générales sur les modèles de données, consultez la classe dataTemplate et les conteneurs et modèles d’élément .

La classe DataTemplateSelector de base n’est pas utilisée comme élément objet en XAML. Toutefois, il s’agit d’un scénario courant pour dériver un DataTemplateSelector personnalisé, mapper un préfixe xmlns pour la classe personnalisée et son espace de noms/assembly, puis faire référence à une instance de la classe personnalisée telle que définie dans un bloc Resources en XAML. Cela permet de faire référence à la classe de sélecteur de modèle personnalisée en x :Key, et d’utiliser cette référence pour définir la valeur des propriétés telles que ItemTemplateSelector dans les modèles XAML et les états visuels.

Les méthodes pouvant être appelées de DataTemplateSelector sont les deux surcharges SelectTemplate. Les méthodes substituables de DataTemplateSelector sont les deux surcharges SelectTemplateCore. Pour définir une sous-classe DataTemplateSelector effective, fournissez des implémentations pour SelectTemplateCore(Object) et SelectTemplateCore(Object, DependencyObject). Toutes ces méthodes retournent une instance DataTemplate qui est généralement un choix spécifique approprié pour les entrées de la méthode appelée pour l’obtenir.

Le code d’application n’appelle généralement pas méthodes SelectTemplate ; les méthodes existent afin que l’infrastructure puisse l’appeler tout en choisissant les modèles appropriés en fonction de l’utilisation d’une instance DataTemplateSelector à partir d’une valeur de propriété telle que ItemsControl.ItemsTemplateSelector.

Par exemple, XAML qui référence un DataTemplateSelector personnalisé en tant que valeur HeaderTemplateSelector et exemple de code montrant les remplacements des méthodes HeaderTemplateSelector, consultez Comment regrouper des éléments dans une liste ou une grille.

Constructeurs

DataTemplateSelector()

Initialise une nouvelle instance de la classe DataTemplateSelector.

Méthodes

GetElement(ElementFactoryGetArgs)

Crée ou récupère une instance existante de l’objet UIElement déclaré dans le DataTemplate retourné par SelectTemplate.

RecycleElement(ElementFactoryRecycleArgs)

Recycle un objet UIElement créé à l’aide de GetElement.

SelectTemplate(Object, DependencyObject)

Retourne un DataTemplate spécifique pour un élément et un conteneur donnés.

SelectTemplate(Object)

Retourne un DataTemplate spécifique pour un élément donné.

SelectTemplateCore(Object, DependencyObject)

En cas d’implémentation par une classe dérivée, retourne une DataTemplate spécifique pour un élément ou un conteneur donné.

SelectTemplateCore(Object)

En cas d’implémentation par une classe dérivée, retourne une DataTemplate spécifique pour un élément ou un conteneur donné.

S’applique à

Voir aussi