XAML, langage de création d'interfaces graphiques
XAML facilite grandement la création, l'édition, la réutilisation
d'interfaces utilisateur graphiques pour les applications locale ou Web.
C'est à Windows ce que XUL est à Firefox, FXML à JavaFX. Le plug-in
Silverlight utilise XAML pour décrire les interfaces d'applications Web.
XAML signifie "Extensible Application Markup Language", dont
langage à balise d'application extensible. En fait la signification a changé au cours du temps, à l'origine le nom de code de WPF, "Avalon", faisait partie de l'acronyme. C'est un format XML doté
d'une sémantique adaptée à la description d'interface
utilisateur graphique.
Il a été créé par Microsoft
et fonctionne sous environnement .NET.

Ce schéma montre le futur de XAML:
A la fois sur l'interface de bureau classique avec le plugin Silverlight dans le navigateur, et dans Metro pour les applications immersives.
Conçu à l'origine pour créer des applications sur la plateforme WPF de Vista, XAML en fait ne s'intégrera réellement dans Windows qu'avec la version 8. Utilisé comme langage d'interface du plugin Silverlight, il conservera ce rôle dans la nouvelle interface Metro à coté de HTML 5.
XAML a en fait des capacités de description d'interface utilisateur beaucoup plus complètes que celles de HTML. Mais ce dernier est lui totalement standard, tandis que le rôle de XAML se limitera aux applications spécifiques à Windows.
XAML décrit les objets de l'interface avec leur présentation
Il est plus simple de réaliser des applications avec XAML qu'avec XUL ou tout autre langage a balises utilisant les CSS, mais il sera ensuite plus difficile de les modifier.
- Le code XML est compilé en langage intermédiaire.
- Les éléments et propriétés de XAML ont un équivalent direct dans la bibliothèque de classe de .NET, sous forme de classes imbriquées et attributs.
- Utilise des graphismes vectoriels.
- Les propriétés de présentation font partie du langage (contrairement à XUL qui utilise les CSS).
- Possibilité d'utiliser les classes .NET à partir de XAML.
- Possibilité d'insérer du code C# avec la balise "code". (XUL utilise JavaScript).
- Les évènements (comme un clic de souris) sont des propriétés des balises et les balises sont des éléments de l'interface.
Exemple de code XAML
Afficher: Salut le Monde:
<Page xmlns="">
<TextBlock>
Salut, le Monde!
</TextBlock>
</Page>
Dessine un bouton:
<button
Background="Gray"
FontSize="18pt"
Click="OnClick">
Soumettre
</button>
Outils et documentation
- Tutoriel Xaml
Le site français consacré à XAML avec la description de .NET, WPF, et tous les outils...
Un plugin de Microsoft, silverlight, permet de faire tourner XAML sur tout navigateur. - Le tutoriel silverlight montre comment faire fonctionner XAML sur le navigateur avec le plugin Silverlight ou localement. Utilisation d'Expression Blend.
- Xaml.fr
Site consacré au langage. - Moonlight.
La version open source de Silverlight fonctionnant sous Mono et Linux. - Comparaisons
Les langages d'interface utilisateur basés sur XML. Comparaison de XAML et XUL. - Télécharger
Silverlight
Obtenir le plug-in de Microsoft pour créer des interfaces Web en XAML.
|
|
|
