private void OpenProject_Execute(object sender, ExecutedRoutedEventArgs e) { DXProject project; if (e.Parameter is RecentItem item) { // 프로젝트 열기 project = item.OpenDXProject(); // 파일을 찾을 수 없음 if (project == null) { recentList.Items.Remove(item); return; } // 프로젝트 열기 실패 if (!project.CanOpen) { return; } } else { project = DXProject.OpenDialog(); } if (project == null) { return; } ShowEditorWindow(new EditorWindow(project)); }
private void OpenProject_Execute(object sender, ExecutedRoutedEventArgs e) { if (e.Parameter is RecentItem item) { // 파일 체크 if (!File.Exists(item.FileName)) { MessageBoxResult result = MessageBox.Show( $"'{item.FileName}' 파일을 열 수 없습니다. 이 파일에 대한 참조를 최근에 사용한 파일 목록에서 제거하시겠습니까?", "DeXign", MessageBoxButton.YesNo, MessageBoxImage.Information); if (result == MessageBoxResult.Yes) { recentList.Items.Remove(item); RecentDB.RemoveFile(item.FileName); } return; } // 프로젝트 열기 this.Project = DXProject.Open(item.FileName); // 프로젝트 파일 열기 실패 if (!this.Project.CanOpen) { // 메박 커스텀하고 내용 바꿀.. MessageBox.Show("어디 나사하나 빠진 파일 같습니다."); return; } } else { this.Project = DXProject.OpenDialog(); } if (this.Project == null) { return; } this.CloseDialog(true); }
private void OpenProject() { OpenProject(DXProject.OpenDialog()); }