Compiled Bindings (рус: Компилируемые привязки)
Указанные в XAML привязки, используют рефлексию для поиска и запроса доступа ко свойству во ViewModel
.
Также Avalonia поддерживает компиляцию привязок, что дает ряд преимуществ:
- Если компилируемая привязка и свойства не найдены, то вы получите ошибку на этапе компиляции проекта.
- Повышение производительности, за счет замены рефлексии на компилируемые привязки в XAML. (подробнее о скорости рефлексии на codeproject.com).
Включение и отключение compiled bindings
к сведению
В зависимости от шаблона, использованного для создания проекта Avalonia, compiled bindings могут быть, по-умолчанию, как включены, так и отключены. Вы можете проверить значение в проекте.
Включение и отключение по всему проекту
Для включение компиляции привязок по-умолчанию, в файл проекта необходимо добавить:
<AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>
Конечно, вам по-прежнему необходимо указывать x:DataType
для привязываемых объектов, однако больше не потребуется прописывать x:CompileBindings="[True|False]"
для каждого UserControl
или Window
.