Ejemplo n.º 1
0
 public EndPointContextLifetimeManager(IViewNavigator viewNavigator)
 {
     _ViewChangedRouter = WeakEventRouter.CreateInstance(this,
         viewNavigator,
         () => default(NavigationEventArgs),
         (o, d) => o.Navigating += d.Handler,
         (o, d) => o.Navigating -= d.Handler,
         (s, p, a) => OnNavigation(a));
 }
Ejemplo n.º 2
0
        public MenuBarManager(IViewNavigator viewNavigator)
        {
            _ViewNavigator = viewNavigator;

            _NavigatingRouter = WeakEventRouter.CreateInstance(this,
                viewNavigator,
                () => default(NavigationEventArgs),
                (o, d) =>  o.Navigating += d.Handler,
                (o, d) => o.Navigating -= d.Handler,
                Navigating);

            _CleanupsByOwner = new Dictionary<EndPoint, Stack<Action>>();

            _ViewNavigator.EnqueueUIWork(() => MenuBar = new Menu());
        }
Ejemplo n.º 3
0
        public void Initialize()
        {
            _RecordSearchRouter = WeakEventRouter.CreateInstance(this,
                Search,
                () => default(PropertyChangedEventArgs),
                (p, d) => p.PropertyChanged += d.Handler,
                (p, d) => p.PropertyChanged -= d.Handler,
                (s, p, a) =>
                {
                    if (a.PropertyName == BindingHelper.Name((RecordSearch rs) => rs.IsAdvancedMode))
                    {
                        foreach (var group in _FilterGroups)
                        {
                            group.ShowOrHeading = p.IsAdvancedMode && group.Group.Ordinal > 1 ?
                                Visibility.Visible :
                                Visibility.Collapsed;
                        }
                    }
                });

            _FilterGroups = new ObservableCollection<RecordFilterGroupViewModel>();
            FilterGroups = (ListCollectionView)CollectionViewSource.GetDefaultView(_FilterGroups);

            foreach (var group in Search.FilterGroups
                .Cast<RecordFilterGroup>())
            {
                AddGroup(new RecordFilterGroupViewModel(group, Search.BaseType));
            }

            AddGroupCommand = new RelayCommand(AddGroup);

            if (!Search.FilterGroups.Any())
            {
                AddGroup();
            }
        }