public ChoiceGenderViewModelItem(IClothesNavigationService clothesNavigationService, IGenderCategoryDomain genderCategory) { _clothesNavigationService = clothesNavigationService; _genderCategory = genderCategory; var choiceCategoryViewModelItems = new ObservableCollection <ChoiceCategoryViewModelItem>(ToChoiceCategoryItems(_genderCategory)); _choiceBaseViewModelItems = choiceCategoryViewModelItems. ToObservableChangeSet(). AutoRefresh(choiceCategory => choiceCategory.ClothesTypesVisible). ToCollection(). Select(ChoiceBaseViewModelItemsUpdate). ToProperty(this, nameof(ChoiceBaseViewModelItems)); ChoiceBaseTapCommand = ReactiveCommand.CreateFromTask <ChoiceBaseViewModelItem, ChoiceBaseViewModelItem>(ChoiceBaseTapUpdate); }
/// <summary> /// Преобразовать в модель категорий одежды /// </summary> private static IReadOnlyCollection <ChoiceCategoryViewModelItem> ToChoiceCategoryItems(IGenderCategoryDomain genderCategory) => genderCategory.Categories. Select(category => new ChoiceCategoryViewModelItem(category)). ToList();