Example #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 MaterialEditViewModel(Model.MaterialModel materialModel, ViewModelSettings viewModelSettings) : base(materialModel, viewModelSettings)
 {
     Name              = this.EntityViewModel.Name;
     FileName          = this.EntityViewModel.FileName;
     Body              = this.EntityViewModel.Body;
     SelectFileCommand = new Command(SelectFile);
     OpenFileCommand   = new Command(() => MaterialViewModel.OpenFile(FileName, Body));
 }
 public MaterialsViewModel(Model.MaterialModel materialModel)
     : base(materialModel)
 {
 }