2009-08-17 3 views
1

내가 어느 정도 MVVM 심지어 WPF 아주 새로운 해요 그래서적절한 방법

은 내가 MVVM 응용 프로그램을 가지고 ... 나와 함께 곰 에는 응용 프로그램 상태에 따라 다른 유형의 viewmodel 인스턴스가 들어있는 기본 창이 있습니다. 이러한보기 모델 중 하나는 응용 프로그램을 다시 시작하고 다른 사용자로 데이터베이스에 로그인하는 단추가있는 옵션 화면입니다. RelayCommand를 사용하면 부모 (메인 윈도우)가이 명령을 처리하고 Window.Close() 메서드 호출을 어떻게 처리 할 수 ​​있습니까?

답변

1

상위 뷰 모델에서 RelayCommand를 정의하십시오. Associated Handler는 부모 뷰 모델에서도 정의됩니다.

이제 자식 뷰 모듈을 생성 할 때 Paremtn View 모델 객체를 생성자의 자식 ViewModel (종속성 주입 패턴)에 전달합니다.

이제보기 또는보기 모델에 대한 명령 바인딩을 설정할 수 있습니다.

다른 대안은 실제로 릴레이 명령 대신 라우트 된 명령을 사용하여 부모보기 모델에 거품을 띄게하는 것입니다.

+0

이것은 실제로 완벽하게 이해할 수 있으며 이전에는 깨닫지 못하는 바보처럼 느껴집니다. – Firoso

관련 문제