В основном у меня в MainViewModel.cs:
ObservableCollection<TabItem> MyTabs { get; private set; }
Однако мне нужно каким-то образом иметь возможность не только создавать вкладки, но и загружать содержимое вкладок и связывать их с соответствующими моделями просмотра при сохранении MVVM.
В принципе, как я могу заставить пользовательский элемент управления загружаться как содержимое элемента вкладки И подключить этот пользовательский элемент управления к соответствующей модели просмотра. Часть, которая делает это трудным, заключается в том, что ViewModel не должен создавать фактические элементы представления, верно? Или может?
В принципе, будет ли это подходящим MVVM:
UserControl address = new AddressControl();
NotificationObject vm = new AddressViewModel();
address.DataContext = vm;
MyTabs[0] = new TabItem()
{
Content = address;
}
Я спрашиваю только потому, что я создаю View (AddressControl) из ViewModel, что для меня звучит как MVVM «нет-нет».