내 요구 사항은 사용자 지정 UserControl을 팝업으로 표시하는 것입니다. this 메서드를 사용하여 Silverlight/MVVM에서 구현하려고합니다. 하지만 팝업 메뉴에 매개 변수를 전달할 수있는 방법을 찾을 수 없습니다. 내가 달성 this 방법을 통해 갔지만 어떻게 든 작동하지 않습니다. 뷰 1의 버튼문제 XAML에서 매개 변수 전달
동작 : 내 XAML이 어떻게 보이는지
이입니다. 이 버튼의 클릭에, 나는 팝업 뷰 2를 개방하고 있습니다 :
<cmds:PopupBehavior.CustomUI>
<views:View2 CategoryID="{Binding CategoryID, Mode=TwoWay}"/>
</cmds:PopupBehavior.CustomUI>
카테고리 ID가 뷰 2에 대한 종속성 속성과 뷰 1의 뷰 모델에서 동일한 이름의 속성에 바인딩됩니다. 하지만 어떤 이유로 ViewID viewModel에서 제대로 설정되어 있어도 ViewID에서 항상 CategoryID가 0이됩니다.
어디로 잘못 가고 있습니까?
편집 : 속성의 세터는 어떤 이유로
public static readonly DependencyProperty CategoryIDProperty = DependencyProperty.Register
("CategoryID",typeof(int),typeof(View2),new PropertyMetadata(0));
public int CategoryID
{
get { return (int)GetValue(CategoryIDProperty); }
set { SetValue(CategoryIDProperty, value); }
}
불리는되지 않습니다 : 여기에
는 뷰 2에 대한 종속성 속성 코드입니다. 이 경우
여기에도 종속 속성 코드를 포함시킬 수 있습니까? 나는 당신이 디버깅을하고 당신의 dp (당신의 dp 속성에서 SetValue의 중단 점)에 전달되는 매개 변수가 0 인지도 확신한다. –
DP 코드를 포함하도록 게시물을 편집했습니다. 그리고 setter는 결코 호출되지 않으므로 DP 등록에서 언급 한 기본값을 사용합니다. – Vinod
내가 생각할 수있는 다음 단계는 바인딩 문제가 있다는 것입니다. 출력 창에서 바인딩 문제가 없는지 확인하고 getter가 뷰 1의 속성에 호출되었는지 확인했다고 가정합니다 ? –