DataTemplate Classe

Définition

Décrit la structure visuelle d'un objet de données.Describes the visual structure of a data object.

public ref class DataTemplate : System::Windows::FrameworkTemplate
[System.Windows.Markup.DictionaryKeyProperty("DataTemplateKey")]
public class DataTemplate : System.Windows.FrameworkTemplate
[<System.Windows.Markup.DictionaryKeyProperty("DataTemplateKey")>]
type DataTemplate = class
    inherit FrameworkTemplate
Public Class DataTemplate
Inherits FrameworkTemplate
Héritage
Dérivé
Attributs

Exemples

L’exemple suivant montre comment créer un DataTemplate Inline.The following example shows how to create a DataTemplate inline. DataTemplateSpécifie que chaque élément de données apparaît sous la forme de trois TextBlock éléments dans un StackPanel .The DataTemplate specifies that each data item appears as three TextBlock elements within a StackPanel. Dans cet exemple, l’objet de données est une classe appelée Task .In this example, the data object is a class called Task. Notez que chaque TextBlock élément de ce modèle est lié à une propriété de la Task classe.Note that each TextBlock element in this template is bound to a property of the Task class.

<ListBox Width="400" Margin="10"
         ItemsSource="{Binding Source={StaticResource myTodoList}}">
   <ListBox.ItemTemplate>
     <DataTemplate>
       <StackPanel>
         <TextBlock Text="{Binding Path=TaskName}" />
         <TextBlock Text="{Binding Path=Description}"/>
         <TextBlock Text="{Binding Path=Priority}"/>
       </StackPanel>
     </DataTemplate>
   </ListBox.ItemTemplate>
 </ListBox>

Il est plus courant de définir un DataTemplate dans la section des ressources afin qu’il puisse s’agir d’un objet réutilisable, comme dans l’exemple suivant :It is more common to define a DataTemplate in the resources section so it can be a reusable object, as in the following example:

<Window.Resources>
<DataTemplate x:Key="myTaskTemplate">
  <StackPanel>
    <TextBlock Text="{Binding Path=TaskName}" />
    <TextBlock Text="{Binding Path=Description}"/>
    <TextBlock Text="{Binding Path=Priority}"/>
  </StackPanel>
</DataTemplate>
</Window.Resources>

Vous pouvez à présent utiliser myTaskTemplate comme ressource, comme dans l’exemple suivant :Now you can use myTaskTemplate as a resource, as in the following example:

<ListBox Width="400" Margin="10"
         ItemsSource="{Binding Source={StaticResource myTodoList}}"
         ItemTemplate="{StaticResource myTaskTemplate}"/>

Vous trouverez l’exemple complet sur la page Présentation d’un exemple de création de modèles de données.For the complete sample, see Introduction to Data Templating Sample.

Remarques

Vous utilisez un DataTemplate pour spécifier la visualisation de vos objets de données.You use a DataTemplate to specify the visualization of your data objects. DataTemplate les objets sont particulièrement utiles lorsque vous liez un comme ItemsControl ListBox à une collection entière.DataTemplate objects are particularly useful when you are binding an ItemsControl such as a ListBox to an entire collection. Sans instructions spécifiques, un ListBox affiche la représentation sous forme de chaîne des objets dans une collection.Without specific instructions, a ListBox displays the string representation of the objects in a collection. Dans ce cas, vous pouvez utiliser un DataTemplate pour définir l’apparence de vos objets de données.In that case, you can use a DataTemplate to define the appearance of your data objects. Le contenu de votre DataTemplate devient la structure visuelle de vos objets de données.The content of your DataTemplate becomes the visual structure of your data objects.

Pour une présentation détaillée, consultez vue d’ensemble des modèles de données.For an in-depth discussion, see Data Templating Overview.

Constructeurs

DataTemplate()

Initialise une nouvelle instance de la classe DataTemplate.Initializes a new instance of the DataTemplate class.

DataTemplate(Object)

Initialise une nouvelle instance de la classe DataTemplate contenant la propriété DataType spécifiée.Initializes a new instance of the DataTemplate class with the specified DataType property.

Propriétés

DataTemplateKey

Obtient la clé par défaut de DataTemplate.Gets the default key of the DataTemplate.

DataType

Obtient ou définit le type auquel ce DataTemplate est destiné.Gets or sets the type for which this DataTemplate is intended.

Dispatcher

Obtient le Dispatcher associé à DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Hérité de DispatcherObject)
HasContent

Obtient une valeur qui indique si ce modèle a optimisé le contenu.Gets a value that indicates whether this template has optimized content.

(Hérité de FrameworkTemplate)
IsSealed

Obtient une valeur qui indique si cet objet est dans un état immuable (c'est-à-dire qu'il ne peut pas être modifié).Gets a value that indicates whether this object is in an immutable state so it cannot be changed.

(Hérité de FrameworkTemplate)
Resources

Obtient ou définit la collection des ressources qui peuvent être utilisées dans la portée de ce modèle.Gets or sets the collection of resources that can be used within the scope of this template.

(Hérité de FrameworkTemplate)
Template

Obtient ou définit une référence à l'objet qui enregistre ou lit les nœuds XAML pour le modèle lorsque le modèle est défini ou appliqué par un writer.Gets or sets a reference to the object that records or plays the XAML nodes for the template when the template is defined or applied by a writer.

(Hérité de FrameworkTemplate)
Triggers

Obtient une collection de déclencheurs qui appliquent des valeurs de propriétés ou effectuent des actions selon une ou plusieurs conditions.Gets a collection of triggers that apply property values or perform actions based on one or more conditions.

VisualTree

Obtient ou définit le nœud racine du modèle.Gets or sets the root node of the template.

(Hérité de FrameworkTemplate)

Méthodes

CheckAccess()

Détermine si le thread appelant a accès à ce DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Hérité de DispatcherObject)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
FindName(String, FrameworkElement)

Recherche l’élément associé au nom spécifié défini dans ce modèle.Finds the element associated with the specified name defined within this template.

(Hérité de FrameworkTemplate)
GetHashCode()

Sert de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
LoadContent()

Charge le contenu du modèle en tant qu'instance d'un objet et retourne l'élément racine du contenu.Loads the content of the template as an instance of an object and returns the root element of the content.

(Hérité de FrameworkTemplate)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
RegisterName(String, Object)

Inscrit une nouvelle paire nom-objet dans la portée de nom active.Registers a new name/object pair into the current name scope.

(Hérité de FrameworkTemplate)
Seal()

Verrouille le modèle de façon à ce qu'il ne puisse pas être modifié.Locks the template so it cannot be changed.

(Hérité de FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété Resources sur les instances de cette classe.Returns a value that indicates whether serialization processes should serialize the value of the Resources property on instances of this class.

(Hérité de FrameworkTemplate)
ShouldSerializeVisualTree()

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété VisualTree sur les instances de cette classe.Returns a value that indicates whether serialization processes should serialize the value of the VisualTree property on instances of this class.

(Hérité de FrameworkTemplate)
ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Hérité de Object)
UnregisterName(String)

Supprime un mappage nom/objet de la portée de nom XAML.Removes a name/object mapping from the XAML namescope.

(Hérité de FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

Vérifie le parent basé sur des modèles par rapport à un ensemble de règles.Checks the templated parent against a set of rules.

VerifyAccess()

Garantit que le thread appelant a accès à DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Hérité de DispatcherObject)

Implémentations d’interfaces explicites

INameScope.FindName(String)

Retourne un objet qui a le nom d’identification fourni.Returns an object that has the provided identifying name.

(Hérité de FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

Demande si une propriété ambiante spécifiée est disponible dans la portée actuelle.Queries whether a specified ambient property is available in the current scope.

(Hérité de FrameworkTemplate)

S’applique à

Voir aussi