public T Create <T>([NotNull] IFileReference fileReference, [NotNull] IOutlookBarViewModel parent)
            where T : IOutlookBarItemViewModel
        {
            var model = ServiceLocator.Current.GetInstance <T>();

            model.Build(fileReference, parent);
            return(model);
        }
        public void Build([NotNull] IFileReference fileReference, [NotNull] IOutlookBarViewModel parent)
        {
            fileReference.EnsureNotNull();
            parent.EnsureNotNull();

            FileReference = fileReference;
            Parent        = parent;

            if (!fileReference.HasSearches)
            {
                return;
            }

            AddGroupTreeViewModel <IPolicySearchGroupTreeViewModel>();
            AddGroupTreeViewModel <IPropertySearchGroupTreeViewModel>();
            AddGroupTreeViewModel <INameSearchGroupTreeViewModel>();
            AddGroupTreeViewModel <IChainOfTitleGroupTreeViewModel>();
        }
 public NavigationService(IOutlookBarViewModel outlookBarViewModel)
 {
     _outlookBarViewModel = outlookBarViewModel;
 }