DataTemplate.DataType Propriété
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.
Obtient ou définit le type auquel ce DataTemplate est destiné.
public:
property System::Object ^ DataType { System::Object ^ get(); void set(System::Object ^ value); };
public object DataType { get; set; }
[System.Windows.Markup.Ambient]
public object DataType { get; set; }
member this.DataType : obj with get, set
[<System.Windows.Markup.Ambient>]
member this.DataType : obj with get, set
Public Property DataType As Object
Valeur de propriété
La valeur par défaut est null
.
- Attributs
Remarques
Cette propriété est très similaire à la TargetType propriété de la Style classe . Lorsque vous définissez cette propriété sur le type de données sans spécifier de x:Key
, est DataTemplate appliqué automatiquement aux objets de données de ce type. Notez que lorsque vous le faites, est x:Key
défini implicitement. Par conséquent, si vous lui attribuez DataTemplate une x:Key
valeur, vous substituez l’implicite x:Key
et ne DataTemplate sera pas appliqué automatiquement.
Notez également que si vous liez un ContentControl à une collection d’objetsTask
, le ContentControl n’utilise pas automatiquement.DataTemplate Cela est dû au fait que la liaison sur un ContentControl a besoin de plus d’informations pour distinguer si vous souhaitez lier à une collection entière ou aux objets individuels. Si votre ContentControl effectue le suivi de la sélection d’un ItemsControl type, vous pouvez définir la Path propriété de la ContentControl liaison sur «/
» pour indiquer que vous êtes intéressé par l’élément actuel. Pour obtenir un exemple, consultez Guide pratique pour lier à une collection et afficher des informations basées sur la sélection. Sinon, vous devez spécifier explicitement le DataTemplate en définissant la ContentTemplate propriété .
La DataType propriété est particulièrement utile lorsque vous avez différents CompositeCollection types d’objets de données.
Si cette propriété cible un élément XML qui ne se trouve pas dans l’espace de noms par défaut, vous devez faire précéder le nom de l’élément par l’espace de noms ou un indicateur d’espace de noms. Pour le code XML exposé via LINQ for XML, l’espace de noms apparaît en accolades, précédées d’une séquence d’échappement d’accolade :
<DataTemplate DataType="{}{http://myNamespace}Details">
Pour le code XML exposé via XPath, le nom de l’élément est précédé d’un désignateur d’espace de noms établi par une instance de XmlNamespaceMapping:
<DataTemplate DataType="mn:Details">
Utilisation d'attributs XAML
<object DataType="typeName"/>
Valeurs XAML
typeName
Si le modèle est destiné aux données d’objet, cette propriété contient le nom de type de l’objet de données (sous forme de chaîne). Pour faire référence au nom de type de la classe, utilisez l’extension x:Type Markup. Si le modèle est destiné aux données XML, cette propriété contient le nom de l’élément XML. Consultez les notes de documentation pour plus d’informations sur la spécification d’un espace de noms autre que celui par défaut pour l’élément XML.