2016-07-05 2 views
0

Я ищу способ привязать поле к некоторому суммарному значению на основе значения в другом атрибуте. Я знаю, что есть несколько других способов сделать это, но если я смогу сделать эту работу, это будет значительно лучше, чем мои альтернативы.XML Рассчитанный путь связывания

Это то, что я до сих пор, используя выражение привязки:

<Text text="{= ${path:'/ProjectStatus(${key})/status'} }"/> 

Назначение: Bind к объекту ProjectStatus, который соответствует ключевой атрибут текущего объекта, и получить атрибут статуса от этого.

Заранее благодарен!

ответ

1

Извините, но это не сработает. Вы не можете использовать привязку выражения для этой цели. Связывание выражений довольно мощное, но предназначено для форматирования и немного математики, а не для определения привязок.

Также было бы нецелесообразно его решать. Если вы хотите создать ключ и сущность, вы всегда должны использовать метод createKey вашего ODataModel, чтобы убедиться, что этот ключ следует за синтаксисом, соответствующим типу свойства. Например: /ProjectStatus('ABC') для ключа типа String, или /ProjectStatus(123) для ключа типа Int.

Лучше всего, чтобы ваш контроллер выполнил bindElement на текстовом контроле. Что-то похожее на это:

this.getView().byId("TextId").bindElement(
    oModel.createKey("/ProjectStatus", { Id: sKey }) 
); 

После того, что вы могли бы просто использовать <Text text="{status}" />, чтобы показать статус проекта.

Смежные вопросы