1
MVVM light ViewModelLocator가 어떤 뷰가로드되는지 식별하고 동적으로 viewmodel을 생성 할 수 있습니까?MVVM light이 가능합니까 ViewModelLocator가 뷰를 기반으로 동적으로 viewmodel을 생성합니까
MVVM light ViewModelLocator가 어떤 뷰가로드되는지 식별하고 동적으로 viewmodel을 생성 할 수 있습니까?MVVM light이 가능합니까 ViewModelLocator가 뷰를 기반으로 동적으로 viewmodel을 생성합니까
당신이 MVVMCross 같은 명명 규칙 기반의 프레임 워크에 ViewModelLocator 코딩 스위치를 피하려면
public ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
//Find the current window/ user control loading
ContentControl control =
//Generate the View model dynamically
//Register to dynamically created view model
SimpleIoc.Default.Register<SelectedViewModel>();
}
. MVVMCross에서는 로케이터가 전혀 없으므로 MyViewModel 객체와 MyView 뷰를 만들면 프레임 워크가 이름 규칙을 기반으로 일치시킵니다.
나는 그것을 좋아하지 만 MVVM에서 얻을 수있는 이점을 없앨 것입니다. – ParkAtStreet
잘 모르겠지만 좋은 생각입니다! 자동보기 모델 생성? –
예, 존, 앞으로 다른 모든 뷰 모델을 등록 할 필요가 없으므로 다음 뷰에서는보기 및 뷰 모델을 추가 할 수 있습니다. 그러면 모든 것은 로케이터에서 코드 변경없이 발생할 수 있습니다. – ParkAtStreet
새로운 ViewModel을 만든 다음 VM을 View 생성자에 전달하고 코드로 생성합니다. 그것은 훨씬 더 많은 코드가 아니며 당신이하고있는 일이보다 분명합니다. – rolls