XAML (che si pronuncia zam'l, acronimo di eXtensible Application Markup Language) è un linguaggio dichiarativo general-purpose, sviluppato da Microsoft, atto alla rappresentazione di grafi di oggetti, molto adatto per creare interfacce utente. XAML è una applicazione del linguaggio XML e i documenti sono contenuti in file con estensione .xaml
.
Questo linguaggio può anche essere visto come un serializzatore, dato che la rappresentazione XAML non è altro che una serializazzione ben fatta di un grafo di oggetti, questo ci fa intuire che qualsiasi elemento rappresentato con XAML può essere creato utilizzando un linguaggio per il framework .NET come C# e VB.NET.
In XAML dichiarare un elemento equivale a creare un'istanza, dichiarare elementi annidati equivale ad aggiungere istanze alla collezione di oggetti figlio, mentre valorizzare un attributo equivale ad impostare una proprietà, queste caratteristiche comportano che la scrittura degli elementi e dei valori in XAML sia case-sensitive.
Vista la sua natura general-purpose, attualmente XAML è utilizzato in Silverlight, WPF e WF, in ognuno con il proprio parser e runtime, questo perchè XAML è composto solo da una serie di regole e parole chiave che indicano, sia al parser, sia al compilatore, come trattare l'XML, quindi il linguaggio da solo non offre nessuna funzionalità, ma necessita di un runtime come quello di Silverlight per esprimersi.
Se abbiamo installata la versione 3.0 o superiore del .NET Framework ed apriamo, tramite doppio click, un file con estensione .xaml
, esso sarà visualizzato in Internet Explorer, attenzione però, perché per visualizzare il contenuto di un file XAML in questo modo viene utilizzato il parser ed il runtime di WPF e non quello di Silverlight.
Proseguiamo analizzando nel dettaglio tutte le peculiarità di XAML.