public PackageExpertViewModel(
            string packagePath,
            IInterProcessCommunicationManager interProcessCommunicationManager,
            ISelfElevationProxyProvider <IAppxPackageQuery> appxPackageQueryProvider,
            ISelfElevationProxyProvider <IAppxVolumeManager> appxVolumeManagerProvider,
            ISelfElevationProxyProvider <ISigningManager> signManager,
            IInteractionService interactionService,
            IAppxFileViewer fileViewer,
            FileInvoker fileInvoker)
        {
            this.interProcessCommunicationManager = interProcessCommunicationManager;
            this.appxPackageQueryProvider         = appxPackageQueryProvider;
            this.appxVolumeManagerProvider        = appxVolumeManagerProvider;
            this.fileViewer  = fileViewer;
            this.fileInvoker = fileInvoker;
            this.packagePath = packagePath;

            this.Trust = new TrustViewModel(packagePath, interactionService, signManager);
        }
        public AppxFilesViewModel(
            string packageFile,
            IAppxFileViewer fileViewer,
            FileInvoker fileInvoker) : base(packageFile)
        {
            this.fileViewer  = fileViewer;
            this.fileInvoker = fileInvoker;
            var rootContainersTask = this.GetRootContainers();
            var nodesCollection    = new ObservableCollection <AppxFileViewModel>();

            this.Nodes = nodesCollection;
            this.View  = new DelegateCommand(this.OnView);

            var containers = new AsyncProperty <IList <AppxDirectoryViewModel> >();

            this.Containers = containers;
#pragma warning disable 4014
            containers.Loaded += this.OnContainersLoaded;
            containers.Load(rootContainersTask);
#pragma warning restore 4014
        }
Exemple #3
0
        public PackageExpertControl(IEventAggregator eventAggregator,
                                    IInterProcessCommunicationManager ipcManager,
                                    ISelfElevationProxyProvider <IAppxPackageQuery> packageQueryProvider,
                                    ISelfElevationProxyProvider <IAppxVolumeManager> volumeManagerProvider,
                                    ISelfElevationProxyProvider <ISigningManager> signingManagerProvider,
                                    IInteractionService interactionService,
                                    IConfigurationService configurationService,
                                    IAppxFileViewer fileViewer,
                                    FileInvoker fileInvoker
                                    )
        {
            this.context = RegionContext.GetObservableContext(this);
            this.context.PropertyChanged += this.OnPropertyChanged;
            this.ipcManager             = ipcManager;
            this.packageQueryProvider   = packageQueryProvider;
            this.volumeManagerProvider  = volumeManagerProvider;
            this.interactionService     = interactionService;
            this.signingManagerProvider = signingManagerProvider;
            this.configurationService   = configurationService;
            this.fileViewer             = fileViewer;
            this.fileInvoker            = fileInvoker;

            eventAggregator.GetEvent <ToolsChangedEvent>().Subscribe(this.CreateTools, ThreadOption.UIThread);
        }