У меня есть представление, что я вызову View1, у которого есть вложенный элемент управления пользователями, который я назову View2. Мое основное приложение создает и показывает View1, который, в свою очередь, создает View2, поскольку он является пользовательским элементом управления View1. Оба View1 и View2 имеют свои собственные режимы просмотра. Мне нужно получить значение из viewmodel View1 в viewmodel View2.Настройка свойств дочерней viewmodel от родителя
View2 предназначен для полностью автономного управления с его собственной функциональностью, которая может использоваться повторно в любом другом виде, но для этого требуется часть информации из любого вида, в котором она содержится. В данном случае это будет be View1.
Моя первая попытка была создать свойство зависимости от View2 поэтому он может быть установлен в View1 так:
<myUserControls:View2 MyProperty="{Binding RelativeSource={RelativeSource Self}, Path=Parent.DataContext.MyProperty}"/>
Это работает, чтобы установить свойство зависимостей, но это не поможет получить свойство значение в viewmodel View2, где я могу работать с ним.
Я делаю это в Silverlight, если это имеет значение.
Кто-нибудь знает, есть ли способ сделать это?
Связь между виртуальными машинами можно безопасно использовать * Посредник шаблон *, см. [Обсуждение в этом ответе] (http://stackoverflow.com/a/21332502/2998271) – har07