x:Array, extension de balisage

Mise à jour : novembre 2007

Fournit la prise en charge générale des tableaux d'objets en XAML.

Utilisation des éléments d'objet XAML

<object>
  <object.property>
    <x:Array Type="typeName">
      <arrayObject1/>
      <arrayObject2/>
      ...
    </x:Array>
  </object.property>
<object>

Valeurs XAML

typeName

Le nom du type que votre x:Array contiendra, requiert souvent un préfixe. Voir Notes.

arrayObject1, arrayObject2, etc.

Éléments objet qui définissent le contenu de votre tableau. Voir Notes.

Notes

Type est un attribut requis pour tous les éléments objet x:Array.

Dans l'implémentation du processeur XAML WPF, la gestion de cette extension de balisage est définie par la classe ArrayExtension. Cette classe n'est pas sealed et pourrait être utilisée comme base pour une implémentation d'extension de balisage pour un type de tableau personnalisé.

x:Array est davantage conçu pour l'extensibilité de langage générale en XAML. Cependant, x:Array peut également s'avérer utile pour remplir certaines propriétés utilisant le XAML dont leur contenu de propriété structuré se fonde sur des classes ou des interfaces générales de prise en charge de collections, par exemple : IEnumerable.

Comme les éléments objet qui remplissent un x:Array ne sont généralement pas des éléments qui existent dans l'espace de noms XML WPF, ils nécessitent un mappage de préfixe.

L'exemple suivant correspond à un tableau simple de deux chaînes, avec le préfixe sys (et x) défini au niveau du tableau :

[xaml]

<x:Array Type="sys:String" xmlns:x=https://schemas.microsoft.com/winfx/2006/xaml

xmlns:sys="clr-namespace:System;assembly=mscorlib">

<sys:String>Hello</sys:String>

<sys:String>World</sys:String>

</x:Array>

Pour plus d'informations, consultez Extensions de balisage et XAML et Espaces de noms XAML et mappage d'espace de noms. Les éléments de tableau doivent également prendre en charge les spécifications pour pouvoir être instanciés en XAML comme éléments objet. Pour plus d'informations, consultez XAML et classes personnalisées.

x:Array est une extension de balisage. Les extensions de balisage sont en général implémentées quand il est nécessaire que les valeurs d'attribut soient autre chose que des valeurs littérales ou des noms de gestionnaire, et que l'exigence est plus globale que le simple fait de mettre des convertisseurs de type sur certains types ou propriétés. x:Array est en quelque sorte une exception à cette règle générale, parce qu'au lieu de fournir une gestion alternative de la valeur d'attribut, x:Array fournit une gestion alternative de son contenu de texte interne. La prise en charge ainsi créée est telle que les classes d'éléments non prises en charge par les modèles de contenu existants peuvent être groupées dans un tableau et référencées ultérieurement en code-behind en accédant au tableau nommé et en appelant les méthodes de tableau pour obtenir des éléments de tableau individuels.

Toutes les extensions de balisage en XAML utilisent les caractères { et } dans leur syntaxe d'attributs. Cette convention indique au convertisseur XAML que l'extension de balisage doit traiter l'attribut. Pour plus d'informations sur les extensions de balisage en général, consultez Extensions de balisage et XAML.

Voir aussi

Concepts

Application d'un style et création de modèles

Vue d'ensemble du langage XAML

Extensions de balisage et XAML