Windows Phone 8 - MVVM ViewModels и App.xaml.cs
Я изучал шаблон MVVM и применял его на практике в приложении для Windows Phone 8, и у меня возник вопрос о лучших методах инициализации и доступа к ViewModels в приложении.
Когда я создаюПриложение с привязкой к данным из шаблонов WP8 SDK, я заметил этот код вApp.xaml.cs файл:
public static MainViewModel ViewModel
{
get
{
// Delay creation of the view model until necessary
if (viewModel == null)
viewModel = new MainViewModel();
return viewModel;
}
}
private void Application_Activated(object sender, ActivatedEventArgs e)
{
// Ensure that application state is restored appropriately
if (!App.ViewModel.IsDataLoaded)
{
App.ViewModel.LoadData();
}
}
Из того, что я понимаю, это означает, чтоПриложение класс содержитMainViewModel в качестве статического члена, и когда приложение активировано, загружается модель представления.
В таком случае у меня есть следующие вопросы:
Если мое приложение имеет несколько моделей ViewMode, все они будут храниться в виде элементов внутриApp.xaml.cs файл?
Если каждая ViewModelданные загружаются одновременно, как мне управлять моим приложением?память? Можно ли выгрузить каждую ViewModel?s данные и загрузить только ViewModel, который используется моим View?