MVVM의 적절한 방법은 릴레이 명령의 처리를 뷰 모델 부모에게 지시합니다.
-
18-09-2019 - |
문제
나는 MVVM에 매우 익숙하지 않고 심지어 WPF조차 어느 정도까지 서서 나와 함께 견뎌냅니다 ...
응용 프로그램 상태에 따라 다른 유형의 뷰 모델 인스턴스가 포함 된 기본 창이있는 MVVM 응용 프로그램이 있습니다. 이러한 뷰 모델 중 하나는 응용 프로그램을 다시 시작하고 데이터베이스에 다른 사용자로 로그인하는 버튼이 포함 된 옵션 화면입니다. RelayCommand를 사용하여 부모 (기본 창) 이이 명령을 처리하고 Window.close () 메소드 호출을 발행하는 방법은 무엇입니까?
해결책
부모보기 모델에서 릴레이 명령을 정의하십시오. 관련 핸들러는 부모보기 모델에서도 정의됩니다.
이제 자식보기 모듈을 생성 할 때 Paremtn보기 모델 객체를 생성자의 Child ViewModel (종속성 주입 패턴)으로 전달합니다.
이제 뷰 또는 뷰 모델에 대한 명령 바인딩을 설정할 수 있습니다.
다른 대안은 실제로 릴레이 명령 대신 라우팅 된 명령을 사용하고 부모님 뷰 모델로 거품을 일으키는 것입니다.
제휴하지 않습니다 StackOverflow