コード例 #1
0
 internal void InitializeComponent(BcontrolDataHandler dataHandler, C1DataGrid searchGrid)
 {
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { dataHandler, searchGrid };
     ActivityFinderPopupViewModel vm = (ActivityFinderPopupViewModel)vmlocator.GetViewModel(typeof(ActivityFinderPopupViewModel), true, args);
     this.DataContext = vm;
 }
コード例 #2
0
 public OrgStructureDialog(string siteUrl,string subSiteUrl,StringBuilder log, string mainCheckListName)
 {
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { siteUrl,subSiteUrl, log, mainCheckListName };
     OrgStructureViewModel vm = (OrgStructureViewModel)vmlocator.GetViewModel(typeof(OrgStructureViewModel), true, args);
     this.DataContext = vm;
     InitializeComponent();           
 }
コード例 #3
0
            public void ReturnsViewModelForViewEndingWithView()
            {
                var viewModelLocator = new ViewModelLocator();
                var resolvedType = viewModelLocator.ResolveViewModel(typeof(PersonView));

                Assert.IsNotNull(resolvedType);
                Assert.AreEqual(typeof(PersonViewModel), resolvedType);
            }
コード例 #4
0
 public ListSettingsDialog(String listasmx, String listorgasmx, String peopleasmx, String custompermissionsasmx, SPList dropDownSelectedList, string siteURL, string siteRootURL, StringBuilder log, List<BusinessUnit> businessUnits)
 {
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { listasmx, listorgasmx, peopleasmx, custompermissionsasmx, dropDownSelectedList, siteURL,siteRootURL, log,businessUnits};
     ListSettingsDialogViewModel vm = (ListSettingsDialogViewModel)vmlocator.GetViewModel(typeof(ListSettingsDialogViewModel), true, args);
     this.DataContext = vm;
     InitializeComponent();
 }
コード例 #5
0
 public UploadHierarchyDialog(StringBuilder log,BcontrolDataHandler bcontrolDataHandler)
 {            
     InitializeComponent();
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { log, this.dataGrid, bcontrolDataHandler };
     UploadReportHierarchyViewModel vm = (UploadReportHierarchyViewModel)vmlocator.GetViewModel(typeof(UploadReportHierarchyViewModel), false, args);
     this.DataContext = vm;
              
 }
コード例 #6
0
ファイル: PeopleEditor.xaml.cs プロジェクト: nilavghosh/VChk
 public PeopleEditor(string siteURL, StringBuilder log,string searchString,PrincipalType searchType)
 {
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { log, siteURL, this.Dispatcher, searchString, searchType };
     PeopleEditorViewModel vm = (PeopleEditorViewModel)vmlocator.GetViewModel(typeof(PeopleEditorViewModel), true, args);
     this.DataContext = vm;
     InitializeComponent();
     ldgIcon.StartRotating();
 }
コード例 #7
0
            public void OverwritesExistingViewType()
            {
                var viewModelLocator = new ViewModelLocator();
                viewModelLocator.Register(typeof(FollowingNoNamingConventionView), typeof(NoNamingConventionViewModel));
                viewModelLocator.Register(typeof(FollowingNoNamingConventionView), typeof(NoNamingConventionViewModel2));

                var resolvedViewModel = viewModelLocator.ResolveViewModel(typeof(FollowingNoNamingConventionView));
                Assert.AreEqual(typeof(NoNamingConventionViewModel2), resolvedViewModel);
            }
コード例 #8
0
 public SecurityAdminDialog(string siteURL, string siteSubURL, StringBuilder log, string adminGroup)
 {
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { siteURL, siteSubURL, this.Dispatcher, log, adminGroup };
     UserSecurityAdminViewModel vm = (UserSecurityAdminViewModel)vmlocator.GetViewModel(typeof(UserSecurityAdminViewModel), true,args);
     this.DataContext = vm;
     InitializeComponent();           
     OffFocus(txtsearch, Constants.FILTER_USERS);
     Closing +=new EventHandler<System.ComponentModel.CancelEventArgs>(SecurityAdminDialog_Closing);
 }        
コード例 #9
0
 public LocationTaskViewDialog(String listasmx, string siteURL, StringBuilder log)
 {
     ViewModelLocator vmlocator = new ViewModelLocator();
     object[] args = new object[] { listasmx, siteURL, log };
     LocationTaskViewModel vm = (LocationTaskViewModel)vmlocator.GetViewModel(typeof(LocationTaskViewModel), false, args);
     this.DataContext = vm;
     vm.GetNewTasks();
     vm.TaskswithDetail.Clear();
     InitializeComponent();
 }
コード例 #10
0
ファイル: EnterViewModel.cs プロジェクト: quzz0/HellMessenger
        public void OpenChat(Window window)
        {
            ChatViewModel chatViewModel = new ViewModelLocator().ChatView;
            chatViewModel.Username = Username;

            ChatView chatView = new ChatView();
            chatView.DataContext = chatViewModel;

            window.Close();
            chatView.Show();
        }
コード例 #11
0
ファイル: AddUserDialog.xaml.cs プロジェクト: nilavghosh/VChk
 public AddUserDialog(string siteURL, StringBuilder log)
 {
     if (DesignTimeEnvironment.DesignTime == false)
     {
         ViewModelLocator vmlocator = new ViewModelLocator();
         object[] args = new object[] { siteURL, this.Dispatcher, log };
         AddUserDialogViewModel vm = (AddUserDialogViewModel)vmlocator.GetViewModel(typeof(AddUserDialogViewModel), true, args);
         this.DataContext = vm;
         InitializeComponent();
         ldgIcon.StartRotating();
     }
 } 
コード例 #12
0
        public SearchViewModel()
        {
            Loc = new LocalServiceLocator();

            CoApp = Loc.CoAppService;
            Vm = new ViewModelLocator();

            FrictionlessSort = PossibleSorts[0].Create(ListSortDirection.Ascending);

            AddFilter = new RelayCommand<GUIFilterBase>(i =>
                                                            {
                                                                AppliedFilters.Add(i.Create());
                                                                RaisePropertyChanged("FiltersToShow");

                                                                ApplyFilters();
                                                            });
            RemoveFilter = new RelayCommand<FrictionlessFilter>(i =>
                                                                    {
                                                                        AppliedFilters.Remove(i);
                                                                        RaisePropertyChanged("FiltersToShow");
                                                                        ApplyFilters();
                                                                    });

            Sort = new RelayCommand<SortDescriptor>(i =>
                                                        {
                                                            FrictionlessSort = i.Create(ListSortDirection.Ascending);
                                                            ApplyFilters();
                                                        });

            SortDescending = new RelayCommand<SortDescriptor>(i =>
                                                                  {
                                                                      FrictionlessSort =
                                                                          i.Create(ListSortDirection.Descending);
                                                                      ApplyFilters();
                                                                  });

            Loaded += OnLoaded;
            GoToProduct = new RelayCommand<ProductInfo>(p => Loc.NavigationService.GoTo(Vm.GetProductViewModel(p.CanonicalName)));
        }
コード例 #13
0
        private async void SetLockScreen(object sender, RoutedEventArgs e)
        {
            var isProvider = Windows.Phone.System.UserProfile.LockScreenManager.IsProvidedByCurrentApplication;
            if (sender is CheckBox && isProvider)
                return;

            isProvider = await Utility.RequestLockAccess();
            UpdateLockScreenStatus();

            var userService = ServiceLocator.Current.GetInstance<IUserService>();
            var locator = new ViewModelLocator();
            var cpvm = locator.ContentPreferences;
            var settingsService = ServiceLocator.Current.GetInstance<ISettingsService>();

            if (cpvm.UseImagePickerForLockScreen && File.Exists(Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\lockScreenCache0.jpg"))
            {
                File.Delete(Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\lockScreenCache0.jpg");
            }
            cpvm.UseImagePickerForLockScreen = false;

            await Utility.DoActiveLockScreen(settingsService, ServiceLocator.Current.GetInstance<IRedditService>(), userService,
                ServiceLocator.Current.GetInstance<IImagesService>(), ServiceLocator.Current.GetInstance<INotificationService>(), false);
        }
コード例 #14
0
        private void SelectLockScreenSubreddit(object sender, RoutedEventArgs e)
        {
            var locator = new ViewModelLocator();
            var spvm = locator.SubredditPicker;
            var cpvm = locator.ContentPreferences;
            _pickerTask = PickerTask.ImagesReddit;

            cpvm.UseImagePickerForLockScreen = false;
            spvm.SetSubredditList(cpvm.ImagesSubreddit);

            for (int i = 0; i < 10; i++)
            {
                if (File.Exists(Windows.Storage.ApplicationData.Current.LocalFolder.Path + string.Format("\\lockScreenCache{0}.jpg", i)))
                {
                    File.Delete(Windows.Storage.ApplicationData.Current.LocalFolder.Path + string.Format("\\lockScreenCache{0}.jpg", i));
                }
            }


            var _navigationService = ServiceLocator.Current.GetInstance<INavigationService>();
            _navigationService.Navigate<SubredditPickerPageView>(null);
        }
コード例 #15
0
        private async void ShowLockScreenPreview(object sender, RoutedEventArgs e)
        {
            var userService = ServiceLocator.Current.GetInstance<IUserService>();
            var settingsService = ServiceLocator.Current.GetInstance<ISettingsService>();

            await Utility.DoActiveLockScreen(settingsService, ServiceLocator.Current.GetInstance<IRedditService>(), userService,
                ServiceLocator.Current.GetInstance<IImagesService>(), ServiceLocator.Current.GetInstance<INotificationService>(), true);

            var lockScreen = new ViewModelLocator().LockScreen;
            if (!settingsService.UseImagePickerForLockScreen)
            {
                lockScreen.ImageSource = Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\" + lockScreen.ImageSource;
            }

            var _navigationService = ServiceLocator.Current.GetInstance<INavigationService>();
            _navigationService.Navigate<LockScreen>(null);
        }
コード例 #16
0
        private void EditPostButton_Tap(object sender, System.Windows.Input.GestureEventArgs e)
        {
            var vm = this.DataContext as CommentsViewModel;
            if (vm == null)
                return;

            var locator = new ViewModelLocator();
            if (locator == null)
                return;

            locator.Submit.SetEditorMode(vm.Link.LinkThing);
            var _navigationService = ServiceLocator.Current.GetInstance<INavigationService>();
            _navigationService.Navigate(typeof(ComposePostPageView), null);
        }
コード例 #17
0
 /// <summary>
 /// Initializes a new instance of the MainWindow class.
 /// </summary>
 public MainWindow()
 {
     InitializeComponent();
     Closing += (s, e) => ViewModelLocator.Cleanup();
 }
コード例 #18
0
 void ExecuteSignOut()
 {
     ViewModelLocator.RegisterViewModel(ViewModelList.Login);
     MessengerInstance.Send <ViewModelControlMessage <ViewModelList> >(new ViewModelControlMessage <ViewModelList>(ViewModelList.Login));
     ViewModelLocator.Cleanup(ViewModelList.Table);
 }
コード例 #19
0
 private void Config_Loaded(object sender, RoutedEventArgs e)
 {
     ViewModelLocator.ConfigInital();
     //OperatorName.Content = Information.AccountantName;
 }
コード例 #20
0
 public BillWindow()
 {
     InitializeComponent();
     Closing += (s, e) => ViewModelLocator.Cleanup("Bill");
 }
コード例 #21
0
ファイル: App.xaml.cs プロジェクト: Aangbaeck/RS-Base
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            var vmLoc = new ViewModelLocator();

            vmLoc.WindowManager.CreateMainWindow();
        }
コード例 #22
0
        public void InitializeFactories(ViewModelLocator locator)
        {
            try
            {
                //Setup some defaults for the Lab Version.
                XamlHelper2.BaseDefaultThemePath = "ms-appx:///";
                SimpleIoc.Default.Unregister <ISkinStorageService>();
                SimpleIoc.Default.Register <ISkinStorageService, AwareThings.WinIoTCoreServices.Controls.SkinStorageServiceLocal>();
                locator.DeviceConfigurationService.SetAutoStartIfTpmAvailable(false);

                //HOL Step 1: Code - Deploy the App with Default AwareThings Skin..
                locator.DeviceConfigurationService.SetDefaultSkin("AwareThings", "AwareThings.WinIoTCoreServices.Skins.AwareThings");

                //HOL Step 2:
                // 1. Connect SensorTile.Box to Device
                // 2. Add Reference to SensorTile (AwareThings.IoTCoreServices.SensorTileSensors.dll in components folder).
                // 3. Add the HOL Skin directory to the App (create new folder HOL under \Skins). Add the skin files to the project + set them to 'Embedded Resource' / 'Copy always'
                // 4. Uncomment these lines to (a) Set Contoso skin with SensorTile Support,  (b) Add the new Sensor Providor required by the skin (for SensorTiles.Box)
                locator.SensorFactoryService.AddProvidor(new SensorTileSensorProvidor());
                locator.DeviceConfigurationService.SetDefaultSkin("HOL", "AwareThings.WinIoTCoreServices.Skins.HOL");


                //HOL Step 3:
                // 1. Deploy the Generated TPMOverride.json file to the device (LocalState folder) with Connection settings pointing to Iot Central Device using SensorTile.Box DeviceTemplate
                // 3. Uncomment this line so that Azure IoT Services are autostarted if TPM information is available on device (either tpmoverride.json or if not available will attempt to use device tpm).
                locator.DeviceConfigurationService.SetAutoStartIfTpmAvailable(true);

                //------------------------------------------------------------

                //Add Display Panel Providors
                locator.DisplayPanelFactoryService.AddProvidor(new DefaultDisplayPanelFactoryProvidor());
                locator.DisplayPanelFactoryService.AddProvidor(new ImageClassificationSkinPanelProvidor());

                //Add Default Sensor Providors + Image Classification Sensor Providor
                locator.SensorFactoryService.AddProvidor(new ImageClassificationSensorProvidor());
                locator.SensorFactoryService.AddProvidor(new DefaultSensorFactoryProvidor());

                //Add Additional Skin Settings UX Templates for Image Classifications.
                locator.DisplayPanelFactoryService.AddTemplateResourceUri(new Uri("ms-appx:///AwareThings.WinIoTCoreServices.ImageClassificationSensors/ImageClassificationDictionary.xaml", UriKind.RelativeOrAbsolute));

                //Add Additional Resource Dictionaries
                try
                {
                    foreach (var m in locator.DisplayPanelFactoryService.ProvidorStyleResourceFiles)
                    {
                        try
                        {
                            this.Resources.MergedDictionaries.Add(new ResourceDictionary()
                            {
                                Source = m
                            });
                        }
                        catch (Exception e)
                        {
                        }
                    }
                }
                catch (Exception e)
                {
                }
            }
            catch (Exception ee)
            {
            }

            //Setup Provisioning Service
        }
コード例 #23
0
 public OrderViewModelTests()
 {
     ViewModelLocator.RegisterDependencies(true);
 }
コード例 #24
0
 public MockViewModelTests()
 {
     ViewModelLocator.UpdateDependencies(true);
 }
コード例 #25
0
        public async Task ActivateAsync(object activationArgs)
        {
            if (IsInteractive(activationArgs))
            {
                // Initialize services that you need before app activation
                // take into account that the splash screen is shown while this code runs.
                await InitializeAsync();

                // Do not repeat app initialization when the Window already has content,
                // just ensure that the window is active
                if (Window.Current.Content == null)
                {
                    // Create a Shell or Frame to act as the navigation context
                    if (_shell?.Value == null)
                    {
                        var frame = new Frame();
                        NavigationService      = _container.RegisterNavigationService(frame);
                        Window.Current.Content = frame;
                    }
                    else
                    {
                        var viewModel = ViewModelLocator.LocateForView(_shell.Value);

                        ViewModelBinder.Bind(viewModel, _shell.Value, null);

                        ScreenExtensions.TryActivate(viewModel);

                        NavigationService      = _container.GetInstance <INavigationService>();
                        Window.Current.Content = _shell?.Value;
                    }

                    if (NavigationService != null)
                    {
                        NavigationService.NavigationFailed += (sender, e) =>
                        {
                            throw e.Exception;
                        };
                    }
                }
            }

            var activationHandler = GetActivationHandlers()
                                    .FirstOrDefault(h => h.CanHandle(activationArgs));

            if (activationHandler != null)
            {
                await activationHandler.HandleAsync(activationArgs);
            }

            if (IsInteractive(activationArgs))
            {
                var defaultHandler = new DefaultActivationHandler(_defaultNavItem, NavigationService);
                if (defaultHandler.CanHandle(activationArgs))
                {
                    await defaultHandler.HandleAsync(activationArgs);
                }

                // Ensure the current window is active
                Window.Current.Activate();

                // Tasks after activation
                await StartupAsync();
            }
        }
コード例 #26
0
 void ExecuteDisplayCOnfiguration()
 {
     ViewModelLocator.RegisterViewModel(ViewModelList.Configuration);
     MessengerInstance.Send <ViewModelControlMessage <ViewModelList> >(new ViewModelControlMessage <ViewModelList>(ViewModelList.Configuration));
     ViewModelLocator.Cleanup(ViewModelList.Table);
 }
コード例 #27
0
        protected override void Configure()
        {
            // Set Caliburn.Micro Conventions naming rule
            var config = new TypeMappingConfiguration
            {
                IncludeViewSuffixInViewModelNames = false,
                DefaultSubNamespaceForViewModels  = "ViewModel",
                DefaultSubNamespaceForViews       = "View",
                ViewSuffixList = new List <string> {
                    "View", "Page", "Control"
                }
            };

            ViewLocator.ConfigureTypeMappings(config);
            ViewModelLocator.ConfigureTypeMappings(config);

            var builder = new ContainerBuilder();

            // Register Serilog logger
            //builder.RegisterLogger();

            // Register basic tools
            builder.RegisterType <WindowManager>()
            .AsImplementedInterfaces()
            .SingleInstance();
            // TODO: Do refactoring
            builder.RegisterType <EventAggregator>()
            .AsImplementedInterfaces()
            .SingleInstance();

            // Register viewModels, Window
            builder.RegisterType <SelectProcessViewModel>();
            builder.RegisterType <HookConfigViewModel>()
            .SingleInstance();
            builder.RegisterType <GameViewModel>()
            .SingleInstance();
            builder.RegisterType <PreferenceViewModel>()
            .SingleInstance();

            // Control
            builder.RegisterType <TextViewModel>()
            .SingleInstance();
            builder.RegisterType <CardViewModel>()
            .SingleInstance();

            // Pages
            builder.RegisterType <GeneralViewModel>()
            .SingleInstance();
            builder.RegisterType <MecabViewModel>()
            .SingleInstance();
            builder.RegisterType <HookViewModel>()
            .SingleInstance();
            builder.RegisterType <AboutViewModel>()
            .SingleInstance();
            builder.RegisterType <LogViewModel>()
            .SingleInstance();
            builder.RegisterType <TransViewModel>()
            .SingleInstance();

            // Register services
            builder.RegisterType <SelectProcessService>()
            .AsImplementedInterfaces();
            builder.RegisterType <GameViewDataService>()
            .AsImplementedInterfaces()
            .PropertiesAutowired(PropertyWiringOptions.AllowCircularDependencies);
            builder.RegisterType <HookSettingPageService>()
            .AsImplementedInterfaces();

            // Register others
            builder.RegisterType <MecabHelper>()
            .SingleInstance();
            builder.RegisterType <DeepLHelper>()
            .SingleInstance();

            Container = builder.Build();

            // Active preview for saving hole console output info
            Container.Resolve <HookViewModel>();
            // For saving log info
            Container.Resolve <LogViewModel>();
        }
コード例 #28
0
        public AddMemberToTheCliquePopupBaseViewModel()
        {
            CommonSearchViewModel = ViewModelLocator.Resolve <SearchMembersForGroupViewModel>();

            PossibleGroupMembers = new ObservableCollection <ProfileDTO>();
        }
コード例 #29
0
ファイル: MainWindow.xaml.cs プロジェクト: gallettube/Bank
 /// <summary>
 /// Initializes a new instance of the MainWindow class.
 /// </summary>
 public MainWindow()
 {
     InitializeComponent();
     Closing += (s, e) => ViewModelLocator.Cleanup();
     Messenger.Default.Register <ViewModelMessage>(this, OnReceiveMessage);
 }
コード例 #30
0
        public static ViewModelBase Navigate <T>(this INavigationService navigationService, object param) where T : ViewModelBase
        {
            var viewModel = ViewModelLocator.Get <T>();

            return(navigationService.Navigate(param, viewModel));
        }
コード例 #31
0
 /// <summary>
 /// Raised when the page is unloaded
 /// </summary>
 /// <param name="sender">Page</param>
 /// <param name="e">Event args</param>
 private void PhoneApplicationPage_OnUnloaded(object sender, RoutedEventArgs e)
 {
     ViewModelLocator.DisposeDetailsVM <Conference>();
 }
コード例 #32
0
ファイル: MainPageView.xaml.cs プロジェクト: Chilos/reader
 public MainPageView()
 {
     this.InitializeComponent();
     DataContext = new ViewModelLocator(CurrentFrame).MainPage;
 }
コード例 #33
0
 public ItemsView()
 {
     InitializeComponent();
     Closing += (s, e) => ViewModelLocator.Cleanup();
 }
コード例 #34
0
ファイル: FrameFacade.cs プロジェクト: jp-weber/Template10
        private async Task <INavigationResult> OrchestrateAsync(
            INavigationParameters parameters,
            NavigationMode mode,
            Func <Task <bool> > navigate)
        {
            // setup default parameters

            CurrentParameters = parameters;
            parameters        = UpdateInternalParameters(parameters, mode);

            // pre-events

            var old_vm = (_frame.Content as Page)?.DataContext;

            if (old_vm is null)
            {
                _logger.Log($"No view-model is set for source page; this is okay; skipping all the [from] overrides including CanNavigate/Async.", Category.Info, Priority.None);
            }
            else if (!await CanNavigateAsync(parameters, old_vm))
            {
                return(this.NavigationFailure($"[From]{old_vm}.CanNavigateAsync returned false; this is okay; FrameFacade orchestration will stop here."));
            }
            else if (!CanNavigate(parameters, old_vm))
            {
                return(this.NavigationFailure($"[From]{old_vm}.CanNavigate returned false; this is okay; FrameFacade orchestration will stop here."));
            }

            // navigate

            var success = await NavigateFrameAsync(navigate);

            _logger.Log($"{nameof(FrameFacade)}.{nameof(OrchestrateAsync)}.NavigateFrameAsync() returned {success}.", Category.Info, Priority.None);
            if (!success)
            {
                return(this.NavigationFailure("NavigateFrameAsync() returned false; this is very unusual, but possibly okay; FrameFacade orchestration will stop here."));
            }

            if (!(_frame.Content is Page new_page))
            {
                var message = "There is no new page in FrameFacade after NavigateFrameAsync; this is a critical failure. Check the page constructor, maybe?";
                _logger.Log(message, Category.Exception, Priority.High);
                throw new Exception(message);
            }

            // post-events

            if (old_vm != null)
            {
                OnNavigatedFrom(parameters, old_vm);
            }

            var new_vm = new_page?.DataContext;

            if (new_vm is null)
            {
                if (ViewModelLocator.GetAutowireViewModel(new_page) is null)
                {
                    // developer didn't set autowire, and did't set datacontext manually
                    _logger.Log("No view-model is set for target page, we will attempt to find view-model declared using RegisterForNavigation<P, VM>().", Category.Info, Priority.None);

                    // set the autowire & see if we can find it for them
                    ViewModelLocator.SetAutowireViewModel(new_page, true);
                    new_vm = new_page.DataContext;
                    if (new_vm != null)
                    {
                        _logger.Log($"View-Model: {new_vm} found for target View: {new_page}.", Category.Info, Priority.None);
                    }
                }
            }

            if (new_vm is null)
            {
                _logger.Log($"View-Model for source page not found; this is okay, skipping all the [to] overides.", Category.Info, Priority.None);
            }
            else
            {
                SetNavigationServiceOnVm(new_vm);
                Initialize(parameters, new_vm);
                await InitializeAsync(parameters, new_vm);

                OnNavigatedTo(parameters, new_vm);
            }

            // refresh-bindings

            new_page.UpdateBindings();

            // finally

            return(this.NavigationSuccess());
        }
コード例 #35
0
 public MainWindow()
 {
     InitializeComponent();
     Closing += (s, e) => ViewModelLocator.Cleanup();
     entities = new ASDatabaseEntities();
 }
コード例 #36
0
        public EditProjectView()
        {
            InitializeComponent();

            _viewModel = ViewModelLocator.Get <EditProjectViewModel>();
        }
コード例 #37
0
 private void Leave()
 {
     var loc = new LocalServiceLocator();
     var vmLoc = new ViewModelLocator();
     loc.NavigationService.GoTo(vmLoc.UpdatingViewModel);
 }
コード例 #38
0
            public void ResolvesMyNameViewerViewModelFromMyNameViewer()
            {
                var viewModelLocator = new ViewModelLocator();
                var resolvedType = viewModelLocator.ResolveViewModel(typeof(Catel.Test.MVVM.Views.MyNameViewer));

                Assert.IsNotNull(resolvedType);
                Assert.AreEqual(typeof(MyNameViewerViewModel), resolvedType);
            }
コード例 #39
0
        private async void CompletePickerTask()
        {
            var locator = new ViewModelLocator();
            var spvm = locator.SubredditPicker;
            var cpvm = locator.ContentPreferences;

            switch (_pickerTask)
            {
                case PickerTask.None:
                    break;
                case PickerTask.ImagesReddit:
                    _pickerTask = PickerTask.None;
                    cpvm.ImagesSubreddit = spvm.GetSubredditString();

                    SetLockScreen(null, null);
                    break;
                case PickerTask.TopPostReddit:
                    _pickerTask = PickerTask.None;
                    cpvm.LockScreenReddit = spvm.GetSubredditString();

                    SetLockScreen(null, null);
                    break;
                case PickerTask.LiveTileReddit:
                    _pickerTask = PickerTask.None;
                    cpvm.LiveTileReddit = spvm.GetSubredditString();
                    break;
                default:
                    break;
            }
        }
コード例 #40
0
 public void ThrowsArgumentNullExceptionForNullTypeToResolve()
 {
     var viewModelLocator = new ViewModelLocator();
     ExceptionTester.CallMethodAndExpectException<ArgumentNullException>(() => viewModelLocator.Register(null, typeof(NoNamingConventionViewModel)));
 }
コード例 #41
0
        private void SelectLiveTileSubreddit(object sender, RoutedEventArgs e)
        {
            var locator = new ViewModelLocator();
            var spvm = locator.SubredditPicker;
            var cpvm = locator.ContentPreferences;
            _pickerTask = PickerTask.LiveTileReddit;

            spvm.SetSubredditList(cpvm.LiveTileReddit);

            var _navigationService = ServiceLocator.Current.GetInstance<INavigationService>();
            _navigationService.Navigate<SubredditPickerPageView>(null);
        }
コード例 #42
0
 public CountriesListViewModel()
 {
     _countryListService = ViewModelLocator.Resolve <ICountryListService>();
     GetCountriesList();
 }
コード例 #43
0
        async void picker_Completed(object sender, Microsoft.Phone.Tasks.PhotoResult e)
        {
            var settingsService = ServiceLocator.Current.GetInstance<ISettingsService>();
            var userService = ServiceLocator.Current.GetInstance<IUserService>();
            var locator = new ViewModelLocator();
            var cpvm = locator.ContentPreferences;

            if (e.Error == null && e.ChosenPhoto != null)
            {
                BitmapImage image = new BitmapImage();
                image.CreateOptions = BitmapCreateOptions.None;
                image.SetSource(e.ChosenPhoto);
                Utility.MakeSingleLockScreenFromImage(0, image);
                cpvm.UseImagePickerForLockScreen = true;

                ClearValue(ImagePreviewProperty);
                SetValue(ImagePreviewProperty, Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\lockScreenCache0.jpg");

                await Utility.DoActiveLockScreen(settingsService, ServiceLocator.Current.GetInstance<IRedditService>(), userService,
                    ServiceLocator.Current.GetInstance<IImagesService>(), ServiceLocator.Current.GetInstance<INotificationService>(), false);
            }
            else
            {
                subredditRadioButton.IsChecked = true;
            }
        }
コード例 #44
0
            public void ReturnsViewModelForView(Type viewType, Type viewModelType)
            {
                var viewModelLocator = new ViewModelLocator();
                var resolvedType = viewModelLocator.ResolveViewModel(viewType);

                Assert.IsNotNull(resolvedType);
                Assert.AreEqual(viewModelType, resolvedType);
            }
コード例 #45
0
 private void OnClosing(object sender, CancelEventArgs cancelEventArgs)
 {
     ViewModelLocator.Cleanup();
 }
コード例 #46
0
 private void Window_Unloaded(object sender, RoutedEventArgs e)
 {
     ViewModelLocator.UnregisterPreviewViewModel();
 }
コード例 #47
0
            public void ClearsTheCache()
            {
                var viewModelLocator = new ViewModelLocator();
                var resolvedType = viewModelLocator.ResolveViewModel(typeof(PersonView));

                Assert.IsNotNull(resolvedType);
                Assert.AreEqual(typeof(PersonViewModel), resolvedType);

                // Clear the naming conventions (so it *must* come from the cache)
                viewModelLocator.NamingConventions.Clear();

                resolvedType = viewModelLocator.ResolveViewModel(typeof(PersonView));

                Assert.IsNotNull(resolvedType);
                Assert.AreEqual(typeof(PersonViewModel), resolvedType);

                // Clear the cache, now it should break
                viewModelLocator.ClearCache();

                resolvedType = viewModelLocator.ResolveViewModel(typeof(PersonView));

                Assert.IsNull(resolvedType);
            }
コード例 #48
0
 private void Input_Loaded(object sender, RoutedEventArgs e)
 {
     ViewModelLocator.InputInital();
 }
コード例 #49
0
 public void ThrowsArgumentNullExceptionForNullResolvedType()
 {
     var viewModelLocator = new ViewModelLocator();
     ExceptionTester.CallMethodAndExpectException<ArgumentNullException>(() => viewModelLocator.Register(typeof(FollowingNoNamingConventionView), null));
 }
コード例 #50
0
 private void Input_Closed(object sender, System.EventArgs e)
 {
     ViewModelLocator.InputClose();
 }
コード例 #51
0
 public void ThrowsArgumentNullExceptionForNullViewType()
 {
     var viewModelLocator = new ViewModelLocator();
     ExceptionTester.CallMethodAndExpectException<ArgumentNullException>(() => viewModelLocator.ResolveViewModel(null));
 }
コード例 #52
0
 // Code to execute when the application is closing (eg, user hit Back)
 // This code will not execute when the application is deactivated
 private void Application_Closing(object sender, ClosingEventArgs e)
 {
     ViewModelLocator.Cleanup();
 }
コード例 #53
0
            public void ReturnsViewModelForNamingConventionWithUp()
            {
                var viewModelLocator = new ViewModelLocator();
                viewModelLocator.NamingConventions.Clear();
                viewModelLocator.NamingConventions.Add("[UP].ViewModels.[VW]ViewModel");

                var resolvedType = viewModelLocator.ResolveViewModel(typeof(Pages.PersonPage));

                Assert.IsNotNull(resolvedType);
                Assert.AreEqual(typeof(PersonViewModel), resolvedType);
            }
コード例 #54
0
 void App_Exit(object sender, EventArgs e)
 {
     ViewModelLocator.Cleanup();
 }
コード例 #55
0
ファイル: App.xaml.cs プロジェクト: roberdjp/lastfm
 public App()
 {
     _kernel = new ViewModelLocator();
 }
コード例 #56
0
 private void InitApp()
 {
     UseMockServices = Settings.UseMocks;
     ViewModelLocator.RegisterDependencies(UseMockServices);
 }
コード例 #57
0
        private Task InitNavigation()
        {
            var navigationService = ViewModelLocator.Resolve <INavigationService>();

            return(navigationService.InitializeAsync());
        }
コード例 #58
0
        private int ExecuteCommandLine(string mode, string version, BackupConfiguration configuration, string output, string name)
        {
            // インスタンス生成時点で IoC コンテナを生成し、必要なインジェクションが
            // 終了している
            var locator = new ViewModelLocator();
            var bitnamiRedmineService = SimpleIoc.Default.GetInstance <IBitnamiRedmineService>();

            try
            {
                // 自プロセスを親プロセスのコンソールにアタッチ
                // とりあえず失敗しない前提
                SafeNativeMethods.AttachConsole(uint.MaxValue);

                // stdoutのストリームを取得
                var defaultStdout = new IntPtr(7);
                var currentStdout = SafeNativeMethods.GetStdHandle(SafeNativeMethods.STD_OUTPUT_HANDLE);

                // リセット
                if (currentStdout != defaultStdout)
                {
                    SafeNativeMethods.SetStdHandle(SafeNativeMethods.STD_OUTPUT_HANDLE, defaultStdout);
                }

                // これ以降は、普通に Console.WriteLine 等が使える
                var writer = new StreamWriter(Console.OpenStandardOutput())
                {
                    AutoFlush = true
                };
                Console.SetOut(writer);

                var redmineStack = bitnamiRedmineService.GetBitnamiRedmineStacks().
                                   FirstOrDefault(stack => stack.DisplayVersion.Equals(version));

                // 指定した引数のバージョンの Redmine が見つからなかった
                if (redmineStack == null)
                {
                    Console.WriteLine($"Specified Redmine version '{version}' is not found.");
                    return(ArgumentError);
                }

                switch (mode.ToLowerInvariant())
                {
                case "backup":
                {
                    // フォルダが存在しない場合もあるので作成
                    output = Utility.GetSanitizedDirectoryPath(redmineStack, Path.Combine(output, name));
                    if (!Directory.Exists(output))
                    {
                        Directory.CreateDirectory(output);
                    }

                    Console.WriteLine($"Start backup to '{output}'...");

                    var engine = new BackupEngine(bitnamiRedmineService,
                                                  SimpleIoc.Default.GetInstance <IBackupService>(),
                                                  null,
                                                  SimpleIoc.Default.GetInstance <ILogService>(),
                                                  configuration,
                                                  redmineStack,
                                                  output);

                    var report = engine.PrepareBackup();
                    engine.ExecuteBackup();

                    // プログレスの変更のイベントをサブスクライブしてコンソールに進捗状況を表示する?
                    //progressDialogService.Action = () =>
                    //{
                    //};
                }
                    return(Success);

                case "restore":
                {
                    Console.WriteLine($"Start restore from '{output}'...");

                    var engine = new RestoreEngine(SimpleIoc.Default.GetInstance <IBitnamiRedmineService>(),
                                                   SimpleIoc.Default.GetInstance <IBackupService>(),
                                                   null,
                                                   SimpleIoc.Default.GetInstance <ILogService>(),
                                                   configuration,
                                                   redmineStack,
                                                   output);

                    var report = engine.PrepareRestore();
                    engine.ExecuteRestore();

                    // プログレスの変更のイベントをサブスクライブしてコンソールに進捗状況を表示する?
                    //progressDialogService.Action = () =>
                    //{
                    //};
                }
                    return(Success);

                default:
                    Console.WriteLine($"Argument '{mode}' is invalid.");
                    return(ArgumentError);
                }
            }
            finally
            {
                SafeNativeMethods.FreeConsole();
            }
        }
コード例 #59
0
        public UserSecurityAdminViewModel(string siteURL,string siteSubURL, Dispatcher d,StringBuilder log,string adminGroup)
        {
            _log = log;
            _isBusy = false;
            SearchString = Constants.FILTER_USERS;
            
            
            CancelCommand = new RelayCommand(CancelAction);
            CancelCommand.IsEnabled = true;

            SearchCommand = new RelayCommand(SearchAction);
            SearchCommand.IsEnabled = true;
            SearchedUsers = new ObservableCollection<User>();
            SearchedGroups = new ObservableCollection<Group>();
            AllGroups = new ObservableCollection<Group>();

            UserGroupCommand = new RelayCommand(GetGroupsAction);
            UserGroupCommand.IsEnabled = false;
            UserGroups = new ObservableCollection<Group>();

            UpdateUserGroupsCommand = new RelayCommand(UpdateUserGroupsAction);
            UpdateUserGroupsCommand.IsEnabled = false;

            _dispatcher = d;    

            ChangeOwnerCommand = new RelayCommand(ChangeOwnerAction);    
            ChangeOwnerCommand.IsEnabled = true;
        
            NewGroupCommand = new RelayCommand(CreateNewGroupAction);
            NewGroupCommand.IsEnabled = true;

            EditGroupCommand = new RelayCommand(EditGroupAction);
            EditGroupCommand.IsEnabled = false;

            ViewAllPermissionsCommand = new RelayCommand(ViewAllPermissionAction);
            ViewAllPermissionsCommand.IsEnabled = false;

            GetGroupUsersCommand = new RelayCommand(GroupUsersAction);
            GetGroupUsersCommand.IsEnabled = false;
                    
            _siteURL = siteURL;
            UserGroupServiceAgent = new UserGroupServiceAgent( siteURL,siteSubURL,log);

            dialogService = new DialogService();
            dialogService.Width = 350;
            dialogService.Height = 120;

            ViewModelLocator vmlocator = new ViewModelLocator();
            object[] args = new object[] { this, _log, _dispatcher, adminGroup };
            GroupViewModel vm = (GroupViewModel)vmlocator.GetViewModel(typeof(GroupViewModel), true, args);
            InnerGroupViewModel = vm;
            InnerGroupViewModel.Visibility = false;

            object[] args1 = new object[] { this, _log, _dispatcher};
            ViewAllPermissionViewModel vm1 = (ViewAllPermissionViewModel)vmlocator.GetViewModel(typeof(ViewAllPermissionViewModel), true, args1);
            InnerPermissionViewModel = vm1;
            InnerPermissionViewModel.Visibility = false;

            object[] args2 = new object[] { this, _dispatcher };
            UserGroupsViewModel vm2 = (UserGroupsViewModel)vmlocator.GetViewModel(typeof(UserGroupsViewModel), true, args2);
            InnerUserGroupsViewModel = vm2;
            InnerUserGroupsViewModel.Visibility = false;

            GroupUsersViewModel vm3 = (GroupUsersViewModel)vmlocator.GetViewModel(typeof(GroupUsersViewModel), true, args2);
            InnerGroupUsersViewModel = vm3;
            InnerGroupUsersViewModel.Visibility = false;
          
            IsSearchByGroup = true;
            SearchCommand.Execute(null);

        }
コード例 #60
0
 protected override void Context()
 {
     base.Context();
     _locator = new ViewModelLocator();
 }