private static void RegisterValidateableProperties(ProjectViewModel project, IValidationContext ValidationContext)
 {
     if (ValidationContext == null) return;
     ValidationContext.RegisterValidateableElement(project.BlockDetails.AssemblyDate);
     ValidationContext.RegisterValidateableElement(project.BlockDetails.SerialNumber);
     foreach (ValidateableFirmwareSetComponentViewModel component in project.FirmwareSetConstructor.Components)
         ValidationContext.RegisterValidateableElement(component);
 }
        public ProjectViewModel GetViewModel(int CellKindId, int CellModificationId, IValidationContext ValidationContext)
        {
            var project = new ProjectViewModel(CellKindId, CellModificationId,
                                               new BlockDetailsViewModel(),
                                               _firmwareSetConstructorViewModelProvider.GetViewModel(CellKindId, CellModificationId),
                                               _eventAggregator,
                                               _burningStatus);

            RegisterValidateableProperties(project, ValidationContext);

            return project;
        }
 public ViewModelProjectAssembler(ProjectViewModel ProjectViewModel, IFirmwareProjectFactory FirmwareProjectFactory)
 {
     _projectViewModel = ProjectViewModel;
     _firmwareProjectFactory = FirmwareProjectFactory;
 }
 public ProjectManagerViewModel(ProjectViewModel Project, BurningViewModel Burning)
 {
     this.Project = Project;
     this.Burning = Burning;
 }