XAML


XAML (англ. eXtensible Application Markup Language) — расширяемый язык разметки для приложений (произносится [замл] или [зэмл]) — основанный на XML язык разметки для декларативного программирования приложений, разработанный Microsoft.

Модель приложений Vista включает объект Application. Его набор свойств, методов и событий позволяет объединить веб-документы в связанное приложение. Объект Application управляет выполнением программы и генерирует события для пользовательского кода. Документы приложения пишутся на XAML. Впрочем, с помощью XAML описывается, прежде всего, пользовательский интерфейс. Логика приложения по-прежнему управляется процедурным кодом (С#, VB, JavaScript и т. д.). XAML может использоваться как для браузер-базированных приложений, так и для настольных приложений.

XAML включает в себя основные четыре категории элементов: панели, элементы управления, элементы, связанные с документом, и графические фигуры. Заявлено 7 классов панелей, которые задают принципы отображения вложенных в них элементов. Для задания положения элементов относительно границ родительской панели используются атрибуты на манер свойств в объектно-ориентированных языках. Подобный синтаксис не совсем соответствует рекомендациям CSS, но является привычным для программистов настольных приложений.

Приложения, объявленные в XAML, могут включать множество страниц. Элемент управления PageViewer позволяет разбивать содержание на страницы и обеспечивает навигацию по ним. Элемент ContextMenu помогает в создании навигационных меню приложения. Код процедурного языка может быть размещён непосредственно в файле XAML или же назначен при сборке проекта.

XAML широко используется в .NET Framework 3.0, в особенности в Windows Presentation Foundation (WPF), Xamarin.Forms, Windows Workflow Foundation (WWF) и Silverlight. В WPF XAML используется как язык разметки пользовательского интерфейса, для определения элементов пользовательского интерфейса, привязки данных, поддержки событий и др. свойств. В WWF при помощи XAML можно определять последовательности выполняемых действий (workflows).

XAML-файлы можно создавать и редактировать при помощи инструментов визуального конструирования, таких как Microsoft Expression Blend, Microsoft Visual Studio, WPF visual designer. Также их можно создавать при помощи стандартного текстового редактора, редактора кода, такого, как XAMLPad, или графического редактора, такого, как Vectropy.