Partager via


DataTemplateSelector Classe

Définition

Active la logique de sélection de modèle personnalisé 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 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 dans XAML. Toutefois, il est courant de dériver un DataTemplateSelector personnalisé, de mapper un préfixe xmlns pour la classe personnalisée et son espace de noms/assembly, puis de 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é 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 efficace, 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’un DataTemplateSelector instance à partir d’une valeur de propriété telle que ItemsControl.ItemsTemplateSelector.

Par exemple, xaml qui référence un DataTemplateSelector personnalisé comme valeur HeaderTemplateSelector , et exemple de code qui montre les remplacements pour les 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 un instance existant 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)

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

SelectTemplate(Object, DependencyObject)

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

SelectTemplateCore(Object)

En cas d’implémentation par une classe dérivée, retourne un DataTemplate spécifique pour un élément ou conteneur 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 conteneur donné.

S’applique à

Voir aussi