Привязки

Привязки называются именно так, потому что они привязывают различные данные друг к другу. Они составляют часть ядра AggreGate, которое устанавливает зависимости между элементами платформы, такими как сущности контекста или компоненты пользовательского интерфейса, вызывая выполнение функций, запуск событий или изменение переменных в ответ на определенные условия или события.

Если вы знакомы с электронными таблицами, то вы уже знаете концепцию: если вы ссылаетесь на ячейку в формуле, как только вы меняете ячейку, на которую ссылаетесь, ячейка с формулой пересчитывается. Это аналог привязок в AggreGate.

Например, в диалоговом окне может быть текстовое поле, которое выделено серым цветом. Вы не можете ничего в нем написать. Рядом с этим текстовым полем можно установить флажок с надписью "Включить эту настройку?". Когда флажок установлен, текстовое поле волшебным образом становится белым (включенным), и вы можете писать в нем. Это делается с помощью привязки данных, где значение флажка (Включено или Отключено) связано с состоянием текстового поля (Включено или Отключено). Привязка данных AggreGate позволяет делать такие замечательные трюки с интерфейсом, используя инструментальные панели; это лишь один пример их возможностей.

Каждая привязка состоит из двух частей:

  • Цель - место, куда будет записан результат выражения при обработке привязки. В зависимости от среды обработки, ссылка может указывать на ячейку Таблицы данных, свойство компонента Пользовательского интерфейса и т.д.

  • Выражение определяет значение, которое будет записано в цель привязки при обработке привязки.

Если вы еще не знакомы с понятиями ссылки или выражения, вам следует просмотреть соответствующие разделы. Без полного понятия ссылок и выражений, нельзя понять как работают привязки.

Большинство других привязок, таких как привязки моделей и инструментальных панелей, также используют свойства Активатор и Условие, а также различные флаги.

Механизм привязок широко используется в AggreGate для различных целей. Например:

  • Привязки модели соединяют объекты модели с другими ресурсами системы.

  • Привязки на инструментальных панелях связывают их визуальные компоненты с моделью данных сервера, определяя их жизненный цикл.

  • Привязки таблицы данных являются частью формата таблицы данных. Они определяют, как связаны ячейки в разных столбцах одной строки, например, fieldC = fieldA + fieldB

  • Привязки экземпляра класса позволяют изменять поле или поля одного или нескольких экземпляров класса.