Langage

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 la sélection du 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 Item.

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 par 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 appelantes 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 les 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 substitutions pour les méthodes HeaderTemplateSelector , voir Comment regrouper des éléments dans une liste ou une grille.

Constructeurs

Nom Description
DataTemplateSelector()

Initialise une nouvelle instance de la classe DataTemplateSelector .

Méthodes

Nom Description
GetElement(ElementFactoryGetArgs)

Crée ou récupère une instance existante de l’objet UIElement déclaré dans 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 un 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 un DataTemplate spécifique pour un élément ou un conteneur donné.

S’applique à

Voir aussi