Я работаю над приложением для Windows Phone 7 с дизайнером.Я занимался разработкой для C # с XNA, поэтому я знаю C #, но не был знаком с архитектурой Model / View / ViewModel.
В нашей первой попытке было задействовать несколько ViewModels для любого данного представления.Каждая ViewModel была промежуточным слоем для каждого объекта в нашей модели.
Например: у нас была страница «Друзья» с ListBox
, которая отображает список друзей.Таким образом, мы сделали FriendsListViewModel
, который будет обрабатывать получение ObservableCollection<Friend>
от модели, с которой связывается XAML.На этой странице были доступны другие функции (переход на другие страницы, активация частично связанных функций и т. Д.), Которые содержались в FriendsPageViewModel.
Это начинало казаться мне безумным, поэтому я сделалотношения между View и ViewModel 1: 1.
Со всем, что описано, у меня возник вопрос с двумя компонентами: каковы MVPM отношения между Views и ViewModels?(здесь основное внимание уделяется разработке Windows Phone 7 в случае, если она отличается от ASP.NET, WPF или Silverlight)
И, как возможное дополнение к этому вопросу: скажем, соотношение 1: 1 является в целом правильным или приемлемымпервый: если вы имеете дело с чем-то вроде Pivot
элемента управления или Panorama
элемента управления, вы обычно предоставляете каждому PivotItem
или PanoramaItem
свой собственный ViewModel?