using Prism.Commands; using Prism.Mvvm; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.IO; using System.Linq; using System.Web.UI; using System.Windows.Shapes; using TeamAAS_VP.Core; using TeamAAS_VP.Models; using TeamAAS_VP.Resources.Languages; namespace TeamAAS_VP.ViewModels.Product { public class CreateProductPageViewModel : BindableBase { private string _ProductName; public string ProductName { get { return _ProductName; } set { SetProperty(ref _ProductName,value); } } private ObservableCollection _Templates; public ObservableCollection Templates { get { return _Templates; } set { SetProperty(ref _Templates, value); } } private string _SelectTemplate; public string SelectTemplate { get { return _SelectTemplate; } set { SetProperty(ref _SelectTemplate, value); } } private DelegateCommand _LoadedCommand; public DelegateCommand LoadedCommand => _LoadedCommand ?? (_LoadedCommand = new DelegateCommand(ExecuteLoadedCommand)); public CreateProductPageViewModel() { } void ExecuteLoadedCommand() { try { Templates = new ObservableCollection(); Templates.Add(Lang.空白); SelectTemplate = Templates[0]; if (!Directory.Exists(FilePath.ProductTemplatePath)) { Directory.CreateDirectory(FilePath.ProductTemplatePath); } DirectoryInfo dir = new DirectoryInfo(FilePath.ProductTemplatePath); DirectoryInfo[] subdirectories = dir.GetDirectories(); foreach (DirectoryInfo subdir in subdirectories) { try { var product = FileHelper.ReadJsonFile(FilePath.ProductTemplatePath + "//" + subdir.Name + "//" + subdir.Name + ".cfg"); if (product!=null) { Templates.Add(subdir.Name); } } catch (Exception) { } } } catch (Exception) { } } } }