Exemple #1
0
        public MaterialsReadViewModel(Model.MaterialModel materialsModel, Model.MaterialTypeModel materialTypeModel)
        {
            var viewModelSettings = new ViewModelSettings();

            viewModelSettings.AllowDoubleClick = false;
            viewModelSettings.AllowSingleClick = true;
            viewModelSettings.ElementClick     = (material) =>
            {
                var typedMaterial = new MaterialViewModel((Entity.Material)material, viewModelSettings);
                var fileName      = typedMaterial.SaveFile();
                FilePath = fileName;
            };

            var materialTypes = materialTypeModel.GetItems(viewModelSettings);

            var materialTypeViewModels = new List <MaterialTypeVM>();

            foreach (var materialType in materialTypes)
            {
                materialsModel.DefaultSpecification = new ByMaterialType(materialType.GetEntity().Key);

                var materials = materialsModel.GetItems(viewModelSettings);

                materialTypeViewModels.Add(new MaterialTypeVM(materialType, materials.Select(x => new MaterialVM(OpenFile)
                {
                    Name     = x.Name,
                    FileName = x.FileName,
                    Data     = x.Body,
                }).ToArray()));
            }

            Items = materialTypeViewModels.ToArray();
        }
 public MaterialTypesViewModel(Model.MaterialTypeModel materialTypeModel)
     : base(materialTypeModel)
 {
 }
 public MaterialTypeEditViewModel(Model.MaterialTypeModel materialTypeModel, MaterialTypeViewModel materialType)
     : base(materialTypeModel, materialType)
 {
     Name = EntityViewModel.Name;
 }
 public MaterialTypeEditViewModel(Model.MaterialTypeModel materialTypeModel, ViewModelSettings viewModelSettings)
     : base(materialTypeModel, viewModelSettings)
 {
     Name = EntityViewModel.Name;
 }
 public MaterialTypesListViewModel(Model.MaterialTypeModel materialTypeModel)
     : base(materialTypeModel)
 {
     ViewModelSettings.IsReadOnly = true;
 }