XAML | это... Что такое XAML? (original) (raw)
XAML (англ. eXtensible Application Markup Language — расширяемый язык разметки приложений; произносится [_замл_] или [_зэмл_]) — основанный на XML язык разметки для декларативного программирования приложений, разработанный Microsoft.
Модель приложений Vista включает объект Application. Его набор свойств, методов и событий позволяет объединить веб-документы в связанное приложение. Объект Application контролирует выполнение программы и генерирует события для пользовательского кода. Документы приложения пишутся на XAML. Впрочем, с помощью XAML описывается, прежде всего, пользовательский интерфейс. Логика приложения по-прежнему управляется процедурным кодом (С#, VB и т. д.). XAML может использоваться как для браузер-базированных приложений, так и для локальных настольных приложений.
XAML включает основные четыре категории элементов: панели, элементы управления, элементы, связанные с документом и графические фигуры. Заявлено 7 классов панелей, которые задают принципы отображения вложенных в них элементов. Для задания положения элементов относительно границ родительской панели используются атрибуты на манер свойств в объектно-ориентированных языках. Подобный синтаксис не очень вяжется с рекомендациями CSS, но будет привычен программистам настольных приложений.
Приложения, объявленные в XAML, могут включать множество страниц. Элемент управления PageViewer позволяет разбивать содержание на страницы и обеспечивает навигацию по ним. Элемент ContextMenu помогает в создании навигационных меню приложения. Код процедурного языка может быть размещён непосредственно в файле XAML или же назначен при сборке проекта.
Краткий обзор
XAML широко используется в .NET Framework 3.0, в особенности в Windows Presentation Foundation (WPF), Windows Workflow Foundation (WWF) и Silverlight. В WPF XAML используется как язык разметки пользовательского интерфейса, для определения элементов пользовательского интерфейса, привязки данных, поддержки событий и др. свойств. В WF, при помощи XAML можно определять последовательности выполняемых действий (workflows).
XAML файлы можно создавать и редактировать при помощи инструментов визуального конструирования, таких как: Microsoft Expression Blend, Microsoft Visual Studio, WPF visual designer. Также, их можно создавать при помощи стандартного текстового редактора, редактора кода такого как: XAMLPad, или графического редактора, такого как Vectropy.
Все созданное или реализованное в XAML может быть выражено при помощи более традиционных .NET языков, таких как: C# или Visual Basic.NET. Однако, ключевым аспектом технологии является уменьшение сложности используемых для обработки XAML инструментов, так как XAML основан на XML. В результате этого появляется множество продуктов, создающих основанные на XAML приложения. Поскольку XAML базируется на XML, у разработчиков и дизайнеров существует возможность одновременно работать над содержимым без необходимости компиляции.
См. также
- Windows Presentation Foundation
- Microsoft Expression Blend
- XBAP (XAML Browser Application)
- XForms
- Silverlight
- XUL
- HTA
- UIML
- Adobe Flex
- OpenLaszlo
- OOXML
- Список языков описания пользовательских интерфейсов
Ссылки
Языки разметки документов | |
---|---|
Офисных документов | Compound Document Format · OOXML (SpreadsheetML, PresentationML, WordprocessingML) · ODF · UOF |
Общеизвестные | HTML · XHTML · MathML · JSON · RTF · TeX · LaTeX |
Менее известные | CML · C-HTML · ConTeXt · Crossmark · DITA · DocBook · eLML · EAD · Enriched text · FHTML · GML · GuideML · HDML · HyTime · HyperTeX · IPF · FictionBook · LilyPond · LinuxDoc · Lout · MIF · MAML · MEI · MusicXML · OMDoc · OpenMath · POD · RTML · RTML · RFT · S1000D · TEI · Texinfo · troff · Вики-текст · WML · WapTV · XAML · YAML · Z Format |
Инструменты разработки элементов графического интерфейса | |
---|---|
Низко-уровневые | Macintosh Toolbox/Carbon • Windows API • Intrinsics • Intuition • Xlib |
Высоко-уровневые | Amiga OS BOOPSI • Magic User Interface • Zune • ReAction GUI Mac OS и Mac OS X Cocoa • MacApp • MacZoop • PowerPlant Microsoft Windows Microsoft Foundation Classes • Windows Template Library • SmartWin++ • Object Windows Library • Visual Component Library • Windows Forms • Windows Presentation Foundation UNIX, под X Xaw • Motif • LessTif • InterViews Кросс-платфор-менные На основе Flash ASWing • Adobe Flex • Gnash • SWF2EXE Software На основе XML,AJAX или SVG Ample SDK • CougarXML • Dojo Toolkit • Echo • ExtJS • GladeXML • Google Web Toolkit • jQuery • Lively Kernel • MooTools • Pyjamas • qooxdoo • Rialto Toolkit • script.aculo.us • XML User Interface • XUL • Yahoo! UI Library На основе Java Abstract Window Toolkit • Swing • Standard Widget Toolkit • Qt Jambi На основеC или C++ Agar • CEGUI • Component Library for Cross Platform • dlib C++ Library • FLTK • FOX toolkit • OpenGL User Interface Library • GTK+ • IUP • Juce • JX Application Framework • Qt • TnFOX • Visual Component Framework • wxWidgets • YAAF • XForms • XVT • Ultimate++ На основе Common Lisp CAPI • Common Graphics • CLIM • McCLIM • Garnet На основе Pascal IP Pascal • Lazarus • fpGUI • FireMonkey На основе Python Pyjamas • PyQt • PyGTK • PyGUI • wxPython • PySide • Tkinter На основе Objective C GNUstep На основе других Tk |