
- •Введение в wpf
- •Разметка
- •Код программной части
- •Автономные приложения
- •Приложения, размещенные в браузере
- •Класс приложения
- •Безопасность
- •Элементы управления wpf по функциям
- •Двухмерные формы
- •Двухмерная геометрия
- •Двухмерные эффекты
- •Трехмерная визуализация
- •Изображения
- •Видео и аудио
- •Документы нефиксированного формата
- •Документы фиксированного формата
- •Документы xps
- •Заметки
- •Упаковка
- •Модель содержимого
- •Триггеры
- •Шаблоны элементов управления
- •Шаблоны данных
- •Ресурсы
- •Темы и обложки
- •Пользовательские элементы управления
- •Разделы общих сведений
- •Примеры
- •Основные понятия
- •Архитектура wpf
- •Основные понятия
- •Новые возможности wpf версии 4
- •Основные понятия
- •Объектные элементы xaml
- •Синтаксис атрибутов (свойства)
- •Синтаксис элемента свойства
- •Синтаксис коллекции
- •Свойства содержимого xaml
- •Текстовое содержимое
- •Объединение свойств содержимого и синтаксиса коллекции
- •Синтаксис атрибутов (события)
- •Префикс "X:"
- •Маршрутизируемые события
- •Основные понятия
- •Другие ресурсы
- •Изменение значения свойства элемента управления
- •Создание стиля для элемента управления
- •Создание ControlTemplate
- •Основные понятия
- •Другие ресурсы
- •Двухмерные формы
- •Двухмерная геометрия
- •Двухмерные эффекты
- •Изображения
- •Видео и аудио
- •Основные понятия
- •Другие ресурсы
- •Направление потока данных
- •Что инициирует обновления источника
- •Указание источника привязки
- •Указание пути к значению
- •Связывание и выражение привязки
- •Способы реализации коллекций
- •Представления коллекций
- •Понятие о представлениях коллекций
- •Создание представления
- •Использование представления по умолчанию
- •Использование представлений коллекций с таблицами данных ado.Net
- •Сортировка
- •Фильтрация
- •Группировка
- •Указатели на текущий элемент
- •Скрипт привязки "основной/подробности"
- •Связь проверочных правил и привязки
- •Предоставление визуального отклика
- •Процесс проверки
- •Основные понятия
- •Другие ресурсы
Основные понятия
Новые возможности .NET Framework 4
В этом разделе описаны возможности языка XAML и показано, как можно использовать язык XAML для написания приложений Windows Presentation Foundation (WPF).В частности, в этом разделе описывается реализация XAML в WPF.Сам язык XAML — это более широкое понятие языка, чем WPF.
В этом разделе содержатся следующие подразделы.
Общие сведения о XAML
Краткое описание синтаксиса языка XAML
Чувствительность к регистру и пробелам в XAML
Расширения разметки
Преобразователи типов
Корневые элементы XAML и пространства имен XAML
Пользовательские префиксы и пользовательские типы в XAML
События и код программной части XAML
Именованные события XAML
Вложенные свойства и события
Базовые типы и язык XAML
Безопасность в XAML
Загрузка XAML из кода
Что дальше?
Связанные разделы
Общие
сведения о XAML
XAML — это декларативный язык разметки.С точки зрения модели программирования .NET Framework язык XAML упрощает создание UI для приложения .NET Framework.Можно создать видимые элементы UI в декларативной разметке XAML, а затем отделить определение UI от логики времени выполнения, используя файлы кода программной части, присоединенные к разметке с помощью определений разделяемых классов.Язык XAML напрямую представляет создание экземпляров объектов в конкретном наборе резервных типов, определенных в сборках. В этом заключается его отличие от большинства других языков разметки, которые, как правило, представляют собой интерпретируемые языки без прямой связи с системой резервных типов.Язык XAML обеспечивает рабочий процесс, позволяющий нескольким участникам разрабатывать UI и логику приложения, используя потенциально различные средства.
При
представлении в виде текста файлы XAML
являются XML-файлами, которые обычно
имеют расширение .xaml
.Файлы
можно сохранять в любой кодировке,
поддерживаемой для XML, но обычно
используется кодировка UTF-8.
В следующем примере показано, как можно создать кнопку как часть UI.Этот пример дает лишь общее представление о том, как в языке XAML представлены распространенные метафоры программирования для такого объекта как UI (это не полный пример).
XAML
Копировать
<StackPanel>
<Button Content="Click Me"/>
</StackPanel>
Краткое описание синтаксиса языка XAML
В следующих разделах приводится описание основных форм синтаксиса XAML и короткий пример разметки.В этих разделах не приводится полная информация о каждой форме синтаксиса (например, представление в системе резервных типов).Дополнительные сведения об особенностях синтаксиса XAML для каждой формы синтаксиса, представленной в этом разделе, см. в разделе Подробное описание синтаксиса XAML.
Значительная часть материалов в следующих нескольких разделах будет уже знакома тем, кто имеет опыт работы с языком XML.Это обусловлено базовыми принципами разработки языка XAML.В языке XAML определяются собственные структуры, однако в них используются язык и форма разметки XML.
Объектные элементы xaml
Объектный элемент обычно объявляет экземпляр типа.Этот тип определен в сборках, предоставляющих резервные типы для технологии, в которой XAML используется как язык.
Синтаксис объектного элемента всегда начинается с открывающейся угловой скобки (<).За ней следует имя типа, для которого требуется создать экземпляр.(Имя может содержать префикс. Описание этого понятия будет приведено далее.) После этого при необходимости можно объявить атрибуты объектного элемента.Для завершения тега объектного элемента введите закрывающую угловую скобку (>).Вместо этого можно использовать самозакрывающуюся форму, в которой отсутствует содержимое, установив в конце тега косую черту и закрывающую угловую скобку (/>).Например, снова рассмотрим предыдущий фрагмент разметки.
XAML
Копировать
<StackPanel>
<Button Content="Click Me"/>
</StackPanel>
В нем
указано два объектных элемента:
<StackPanel>
(с содержимым и последующим закрывающим
тегом) и <Button
.../>
(самозакрывающаяся форма с несколькими
атрибутами).Объектные элементы StackPanel
и Button
сопоставлены с именем класса, определенным
WPF и являющимся частью сборок WPF.При
задании тега объектного элемента
создается инструкция обработки XAML для
создания нового экземпляра.Каждый
экземпляр создается путем вызова
конструктора базового типа или структуры
по умолчанию при синтаксическом анализе
и загрузке XAML-кода.