View2를 호출 할 중첩 된 사용자 정의 컨트롤이있는 View1을 호출하는 뷰가 있습니다. 내 주 응용 프로그램은 View1을 만들고 보여줍니다. View1은 View1의 사용자 컨트롤이므로 View2를 만듭니다. View1과 View2는 둘 다 자체 뷰 모델을 가지고 있습니다. 내가해야 할 일은 View1의 viewmodel에서 View2의 viewmodel으로 값을 얻는 것입니다.부모로부터 하위 viewmodel 속성 설정
View2는 다른보기에서 재사용 할 수있는 자체 기능이 포함 된 완전히 독립적 인 컨트롤을 의미하지만보기에 포함 된 정보가 필요합니다. 여기에 주어진 경우 View1이되어야합니다. 그것은과 같이 뷰 1에서 설정 될 수 있도록
내 첫 번째 시도는 뷰 2에 대한 종속성 속성을 만드는 것이 었습니다 :
<myUserControls:View2 MyProperty="{Binding RelativeSource={RelativeSource Self}, Path=Parent.DataContext.MyProperty}"/>
이 종속성 속성을 설정하기 위해 노력하고 있지만, 그 속성을 얻을 도움이되지 않습니다 가치를 View2의 viewmodel에 입력하면됩니다.
Silverlight에서이 작업을하고 있습니다.
누구나이 방법이 있는지 알고 있습니까?
VM 간의 통신은 * Mediator 패턴 *을 사용하여 안전하게 수행 할 수 있습니다. [이 답변의 토론] (http://stackoverflow.com/a/21332502/2998271) – har07