XAML est l'acronyme de eXtensible Application Markup Language, donc
langage à balises pour applications extensibles. Sont extensibles
les applications avec l'ajout de composant pendant l'exécution
et le langage lui-même avec de nouveaux composants.
Dans le nom XAML, la lettre A originellement représentait Avalon,
le nom provisoire de la couche graphique de Windows Vista, renommée
par la suite WPF (Windows Présentation Foundation).
XAML est un format XML dans lequel peuvent être intégrées
des commandes, associées à des propriétés
des éléments de la même façon que dans JavaScript:
Exemple: appel de la fonction OnClick() quand on clique sur le bouton.
<button Click="OnClick"> </button>
Il est aussi possible d'insérer des portions de code dans une balise propre, la balise "code".
Le code est compilé en langage intermédiaire IL (Intermediate
Language) de la plateforme .NET.
- Les balises deviennent des objets.
- Les propriétés deviennent des attributs.
Il est alors possible de traiter le code de la même façon
que pour les classes du langage utilisé et les attributs.
Les balises prédéfinies composant le langage XAML sont
aussi des classes .NET.
Il utilise les composantes de .NET et partage les ressources du CLR
(Common Language Runtime) avec les langages procéduraux.
Les éléments du langage XAML correspondent à des
balises de positionnement et a des "widgets", des composants
d'interface utilisateur graphiques tel que bouton, champ de texte, menu,
liste, bouton radio, etc....
Ces composants de même que le texte utilisent des graphismes vectoriels
permettant d'ajuster leur taille sans perte de définition.
Les propriétés telles que couleurs, police, dimensions etc...
sont des attributs des balises.
Exemple: définir la couleur de fond du bouton.
<button BackGround="Gray"> </button>
Plus d'informations
XAML et XUL, comparaison. XAML s'est inspiré de XUL de Mozilla. Leurs différences ainsi qu'avec les principaux autres langages d'interface basés sur XML.
XAML in WPF. Par Microsoft. (Anglais)