MVVM 패턴 인 Silverlight 및 XAML을 이해하려고합니다.Silverlight의 MVVM 데이터 지속성
나는 프레임에 뷰를로드하는 메인 페이지가있는 단계에 있습니다. 각보기는 xaml의 viewmodel에 바인딩 한 다음 viewmodels 데이터에 바인딩 할 수 있습니다. 또한 버튼 클릭과 그리드 이벤트 등 (예 : SelectionChanged)에 대한 명령을 실행하고 있습니다.
사용자가 기본 페이지 탐색 메뉴를 사용하여 탐색하면 새보기가 프레임에로드되어 자체보기 모델의 인스턴스를 만듭니다.
내 질문에 대한 하나의보기에 대한 내 viewmodel은 일부 데이터에 대한 WCF 메서드를 호출하고 viewmodel에 보관 된 ObservableCollection에 대한 바인딩을 통해 그리드에 표시합니다. 변경이 이루어지면 단순히 저장 WCF 메소드를 호출하고이 ObservableCollection을 전달합니다. 그러나 사용자가 눈금 선을 두 번 클릭하면 일부 정보를 저장하고 두 번 클릭하여 다른보기로 변경되므로 다음보기로 유지해야합니다. "선택한 항목 ID"와 같은 정보.
필자가 결론을 내린 것은 뷰 모델과 분리되어 있으며 응용 프로그램 상태 및 사용자 선택 등을 유지하는 클래스의 "모델"집합입니다. Viewmodels는 여기에서 "선택한 항목 ID"와 같은 항목을 저장할 수 있습니다. 내 마음 속에 .. "모델"은 WCF 통화의 반대편에있는 모든 것이 었습니다. 나는 다른 모델 "레이어"를 여기에 만들어야한다고 생각하지 않았다?
나는이 접근법에있어 잘못된 점을 알고 있지만 잘못 생각합니다.
누구든지이 작업을 수행해야하는 방법에 대해 설명해 줄 수 있습니까? 아니면이 방법이 괜찮습니까? 나는 그 패턴을 오해 했습니까?
도움 주셔서 감사합니다.
정보에 대해 알아야 할 뷰 모델이 아직 인스턴스화되지 않았습니다? 이것은 프레임의 뷰가 뷰 xaml을 통해 변경되는 경우에만 발생합니다. – creatiive