public void Open() { try { if (!File.Exists(Path)) { if (Directory.Exists(Parent.Path)) { Parent.Files.Remove(this); } else { DirectoryViewModelBase.OnNoExistDirectory(Parent); } MessageBoxService.Instance.ShowError(FileDoesExistException.Msg); return; } Process.Start(Path); } //operation was canceled user catch (Win32Exception) { } }
private void DirectoryViewModelBase_OpenDirectory(object sender, DirectoryViewModelBase.OpenDirectoryArgs e) { SelectedDirectory = e.Directory; }
private void DirectoryViewModelBaseOnNoExistDirectory(object sender, DirectoryViewModelBase.NoExistDirectoryArgs e) { var directory = PathHelper.ClearNotExistDirectories(e.Directory); e.Directory.Parent.SubDirectories.Remove(directory); DirectoryWatcher.DeleteFileSystemWatcher(e.Directory); }