public MainScreen( Main.AddressBookViewModel addressBook, Func<Detail.PersonViewModel> makePersonDetail) { _addressBook = addressBook; _makePersonDetail = makePersonDetail; }
public Container() { var addressBook = new AddressBook(); var personSelection = new Main.PersonSelection(); Func<Person, Main.PersonViewModel> makePersonViewModel = person => new Main.PersonViewModel(person); var addressBookViewModel = new Main.AddressBookViewModel(addressBook, personSelection, makePersonViewModel); Func<Detail.PersonViewModel> makePersonDetail = delegate { if (personSelection.SelectedPerson == null) return null; return new Detail.PersonViewModel(personSelection.SelectedPerson); }; _mainScreen = new MainScreen(addressBookViewModel, makePersonDetail); }