DataTemplateSelector Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
- 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é. |