private void ClickedOpenProject(object sender, RoutedEventArgs e) { var Dialog = new OpenFileDialog(); Dialog.Filter = "プロジェクトファイル (*.projm)|*.projm|全てのファイル (*.*)|*.*"; var ReturnValue = Dialog.ShowDialog(); if (ReturnValue == true) { var cmd = new MainViewModel.LoadProjectFile(); cmd.LoadedProjectFileAbsolutePath = Dialog.FileName; RecevierOfViewModel.CommandViewModelTo(cmd); var Ins = new CMainView.MainViewItemsAvailableValueManager(this); Ins.EnableMainViewItems(); UpdateMaterialDataGrid(); var anotherCmd = new MainViewModel.GetProjectName(); anotherCmd.LoadedProjectFileAbsolutePath = Dialog.FileName; RecevierOfViewModel.CommandViewModelTo(anotherCmd); //ウィンドウタイトル変更 this.Title = "「お借りした素材一覧」生成器" + "――" + anotherCmd.FetchedProjectName; } }
void IReceiverCommandFromView.CommandViewTo(LoadProjectFiles InputCmd) { var cmd = new MainViewModel.LoadProjectFile(); cmd.LoadedProjectFileAbsolutePath = InputCmd.LoadedProjectFileAbsolutePath; RecevierOfViewModel.CommandViewModelTo(cmd); var Ins = new CMainView.MainViewItemsAvailableValueManager(this); Ins.EnableMainViewItems(); UpdateMaterialDataGrid(); //ウィンドウタイトル変更 Title = "「お借りした素材一覧」生成器" + "――" + InputCmd.ProjectName; }
public void CommandViewModelTo(LoadProjectFile cmd) { ProjectFileReader Reader = new ProjectFileReader(cmd.LoadedProjectFileAbsolutePath); ProjectFileData Data = new ProjectFileData(); Data = Reader.LoadProjectFilePathData(); //フルパス名からディレクトリ名を取得 System.IO.FileInfo fi = new System.IO.FileInfo(cmd.LoadedProjectFileAbsolutePath); string ProjectFileDirectoryAbsolutePath = fi.Directory.FullName; StoringDataFilePath.GetInstance().StoreFilePath(Data, ProjectFileDirectoryAbsolutePath); //FIXME:将来的には、ActiveProjectDataか、直接生成するほうか、どちらかに統一しなければならない。 ActiveProjectData.GetInstance().MaterialSiteListData = new MaterialSiteListData(); ActiveProjectData.GetInstance().MateiralListLogicalData = new MaterialListLogicalData(); }