[#] Инжекторы контекста xaml
habrabot(difrex,1) — All
2015-03-30 19:00:04


В [предыдущей части][1] мы познакомились с расширениями привязки и разобрались, как их применять на практике, например, для локализации. Сегодня же продолжим изучать особенности библиотеки [_Aero Framework_][2] и , а заодно применим познания из прошлой статьи. На практике часто встречается следующая задача: связать вью-модель, которая хранится в _unity_-контейнере, с одним или несколькими её представлениями (экранами). Обычно такое связывание происходит в бехаинд-коде, в результате чего у представления устанавливается нужное значение в свойство _DataContext_. Во многих случаях это работает хорошо, но с таким подходом сопряжены определённые нюансы и трудности. Например, они касаются контекстных меню и другой всплывающей анимации, поскольку она не входит в визуальное дерево, а следовательно, для неё становится недоступным основной контекст данных. Другой случай связан с работой списковых элементов, когда контекстом уже является элемент списка, но есть необходимость в использовании другого источника привязки. Третий вариант возникает, когда одно представление работает сразу с несколькими вью-моделями. Все эти трудности так или иначе решаемы, но существует универсальный и очень простой способ их красиво разрешить. О нём и пойдет речь. ![][3] [Читать дальше →][4]

[1]: http://habrahabr.ru/post/254115/
[2]: http://makeloft.by/ru/tools
[3]: //habrastorage.org/files/741/5d8/8d1/7415d88d178848f6a1c93df00c75657c.jpg
[4]: http://habrahabr.ru/post/254373/#habracut