Extensible Application Markup Language

Extensible Application Markup Language (XAML, výslovnost [zaml]) je značkovací jazyk (obdoba HTML) využívaný k popisu grafického rozhraní v aplikacích společnosti Microsoft nové generace. Je vyvíjený Microsoftem a založený na XML. Zkratka původně znamenala Extensible Avalon Markup Language, kde Avalon bylo kódové označení pro Windows Presentation Foundation (WPF).

Význam

XAML se zeširoka používá už od .NET Frameworku 3.0, zejména v technologiích Windows Presentation Foundation, Workflow Foundation a Silverlight. Ve WPF a Silverlightu se XAML používá pro vytvoření uživatelského rozhraní, zatímco ve WF se jím definují samotná workflows.

Pro práci se XAML designem byly vytvořeny aplikace z balíku z Microsoft Expression Tools, které se používají dohromady s Visual Studiem. Stejně tak je možné upravovat XAML kód v poznámkovém bloku, případně ve speciálním XAMLPad editoru.

Všechno, co kdo vytvoří pomocí XAMLu, je možné popsat i pomocí standardních .NET jazyků C# nebo VB.NET. Výhodou XAMLu je velká jednoduchost a stále častěji se můžeme setkat s tím, že firmy předělávají své produkty na použití WPF.[zdroj?]

Technologie

XAML soubor může být zkompilován do .baml souboru (Binary XAML), který pak může být vložen a používán jako resource v .NET projektu. Za běhu aplikace pak framework vezme informace z .baml souboru a vykreslí uživatelské rozhraní.

Příklad

Následující příklad ukazuje vypsání textu "Ahoj světe!" pomocí XAMLu:

<Window x:Class="HelloWorld.Window1"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
	<Canvas>
  		<TextBlock>Ahoj světe!</TextBlock>
	</Canvas>
</Window>

Tento kód bude mít stejný efekt jak ve WPF, tak v Silverlightu.