.
ViewModelLocator
또는 유사한 것이 도움이되는 접근 방식은 MVVM을 개발하는 "처음부터보기"방식입니다. 이를 통해 디자이너에서 뷰로 시작한 다음 일치시킬 ViewModel을 빌드해야합니다. 논리적으로 뷰는 다른 뷰를 생성하는 경우가 많으며 일반적으로 ViewModel은 특정 형식의 로케이터를 통해로드되고 지정된 뷰에 대해 채워집니다. 메시징 또는 서비스는 새로 생성 된 ViewModels에 적절한 모델을 연결하는 데 사용됩니다.
특히 블렌드 작업을 할 때 시각적으로 디자인하기가 쉽습니다.
다른 접근법은 "ViewModel-First"를 사용하는 것입니다. 이를 통해 ViewModel을 생성 한 다음 DataTemplates를 사용하여 View를 채 웁니다. ViewModels는 적절한 VM을 직접 설정하여 다른 VM을 작성/작성합니다. 이것은 일반적으로 (IMO) 훨씬, 훨씬 더 프로그래머의 관점에서, 일을 그냥 직접 작동합니다. 그러나 디자인 타임 데이터를 생성하기가 더 어렵 기 때문에 일반적으로 설계자의 관점에서 설계하고 작업하기가 더 어렵습니다.
두 가지 방법 모두 완벽하게 유효하며 장점과 단점이 큽니다. 다른 MVVM purists는 여러 가지 이유로 한 가지 접근 방식을 선호하는 경향이 있습니다. 일반적으로 코드 정리 관점이나 디자이너 관점에서 접근합니다.
방금이 질문에 답변했습니다 (http://stackoverflow.com/questions/5462040/what-is-a-viewmodellocator-and-what-are-its-pros-cons-compared-to-datatemplates) :) – Jon