Поделиться через


Возможности языка XAML 2009

XAML 2009 — это сокращение для новых компонентов языка XAML, которые расширяют существующую спецификацию языка XAML. XAML 2009 вводит несколько новых директив и конструкций. Сюда относится следующее: Директива x:Arguments; Директива x:FactoryMethod; Расширение разметки x:Reference; Директива x:TypeArguments; и встроенные типы общих языковых примитивов (например, x:Char).

В этом разделе содержатся следующие подразделы.

  • Поддержка XAML 2009 в WPF и Visual Studio
  • Связанные разделы

Поддержка XAML 2009 в WPF и Visual Studio

В WPF можно использовать возможности XAML 2009, но только для кода XAML, который не является компилированной разметкой WPF. XAML с компилированной разметкой и форма BAML языка XAML в настоящее время не поддерживают ключевые слова и функции языка XAML 2009.

Следует отметить, что существующие методы для загрузки свободного XAML в WPF также имеют возможные ограничения безопасности и доступа к типам CLR и к системе типов, которые являются более строгими, чем ограничения для XAML с компилированной разметкой. Дополнительные сведения см. в разделе Безопасность (WPF) или Стратегия безопасности WPF — безопасность платформы.

В XAML 2009 также представлены дополнительные функции, которые изменяют предыдущие конструкции XAML 2006 или основные формы разметки.

x: Key как объектный элемент

XAML 2009 может поддерживать x:Key в качестве объекта (элемент свойства со значением элемента объекта), тогда как XAML 2006 поддерживал только x:Key в качестве атрибута. См. раздел "XAML 2009" в описании Директива x:Key.

xmlns в свойствах элементов

XAML 2009 может поддерживать определения пространств имен XAML (xmlns) в элементах свойств; однако XAML 2006 поддерживает определения xmlns только в элементах объекта.

Атрибуты событий

Для атрибутов, которые архивируются событиями, язык XAML 2006 исходит из того, что компиляция разметки включена, и подает события для компиляции разметки. XAML 2009 поддерживает форму разметки, которая напоминает расширение разметки, позволяющую откладывать связывание событий на время выполнения синтаксического анализа и загрузки XAML. Однако приложения WPF и сценарии XAML для пользовательского интерфейса WPF обычно не используют эту возможность. WPF и его реализация XAML 2006 использует сочетание обработчика событий для перенаправленных событий, определенных на уровне UIElement, и компилятор разметки для значительной части обработки атрибутов события. Компилятор разметки также выполняет предварительную обработку любых атрибутов событий, найденных в XAML, когда действия построения объявляют, что используется компилятор разметки.

См. также

Основные понятия

Общие сведения о языке XAML (WPF)