DataTemplateSelector Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Abilita la logica di selezione del modello personalizzata a livello di applicazione.
/// [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
- Ereditarietà
- Attributi
- Implementazioni
Commenti
Per altre info ed esempi, vedi selezione modello di dati. Per informazioni più generali sui modelli di dati, vedi la classe
La classe DataTemplateSelector di base non viene usata come elemento oggetto in XAML. Tuttavia, si tratta di uno scenario comune per derivare un DataTemplateSelector personalizzato, eseguire il mapping di un prefisso xmlns per la classe personalizzata e il relativo spazio dei nomi/assembly e quindi fare riferimento a un'istanza della classe personalizzata come definito in un blocco Resources in XAML. In questo modo è possibile fare riferimento alla classe del selettore di modelli personalizzati x:Keye usare tale riferimento per impostare il valore delle proprietà, ad esempio ItemTemplateSelector nei modelli XAML e negli stati di visualizzazione.
I metodi chiamabili di DataTemplateSelector sono i due overload SelectTemplate. I metodi sottoponibili a override di DataTemplateSelector sono i due overload SelectTemplateCore. Per definire una sottoclasse DataTemplateSelector efficace, fornire implementazioni per SelectTemplateCore(Object) e SelectTemplateCore(Object, DependencyObject). Tutti questi metodi restituiscono un DataTemplate'istanza che in genere è una scelta specifica appropriata per gli input del metodo chiamato per ottenerlo.
Il codice dell'app in genere non chiama metodi SelectTemplate; I metodi esistono in modo che l'infrastruttura possa chiamarla durante la scelta dei modelli corretti in base all'uso di un'istanza di DataTemplateSelector da un valore della proprietà, ad esempio ItemsControl.ItemsTemplateSelector.
Ad esempio XAML che fa riferimento a un oggetto DataTemplateSelector personalizzato come valore
Costruttori
DataTemplateSelector() |
Inizializza una nuova istanza della classe DataTemplateSelector |
Metodi
GetElement(ElementFactoryGetArgs) |
Crea o recupera un'istanza esistente dell'oggetto UIElement dichiarato nel DataTemplate restituito da SelectTemplate. |
RecycleElement(ElementFactoryRecycleArgs) |
Ricicla un oggetto UIElement |
SelectTemplate(Object, DependencyObject) |
Restituisce un DataTemplate |
SelectTemplate(Object) |
Restituisce un DataTemplate |
SelectTemplateCore(Object, DependencyObject) |
Se implementato da una classe derivata, restituisce un DataTemplate specifico per un determinato elemento o contenitore. |
SelectTemplateCore(Object) |
Se implementato da una classe derivata, restituisce un DataTemplate specifico per un determinato elemento o contenitore. |