Beispiel #1
0
        public MenuContentViewModel(
            IPreferencesService preferencesService,
            MenuNavigationHelper menuNavigationHelper)
        {
            _preferencesService   = preferencesService;
            _menuNavigationHelper = menuNavigationHelper;

            OpenClosePaneCommand = ReactiveCommand.Create(OpenClosePaneCommandExecuted);

            this.ObservableForProperty(x => x.SelectedMenuItem)
            .Subscribe(args => OnSelectedMenuItemChanged(args.Value));

            menuNavigationHelper.ObservableForProperty(x => x.CurrentPageType)
            .Where(args => args.Value != null)
            .Subscribe(args => OnSelectedMenuItemChangedInternal(args.Value, menuNavigationHelper.Param));

            FillMenuItems();
            SelectedMenuItem = MenuItems.First();
        }