private void Rename() { if (!string.IsNullOrEmpty(textField.Text)) { try { MainWindow mainWindow = System.Windows.Application.Current.Windows.OfType <MainWindow>().FirstOrDefault(); CustomItem selectedFile = mainWindow.ctrChildView.MyDataGrid.SelectedItem as CustomItem; if (!selectedFile.Type.Equals("File folder") && Path.GetExtension(selectedFile.Name).Equals(".txt")) { CustomItemWithCollection selectedDirectory = mainWindow.ctrTreeView.trvMenu.SelectedItem as CustomItemWithCollection; bool isExists = false; isExists = IsFileNameTaken(selectedDirectory, isExists); if (!isExists) { RenameSelectedFile(selectedFile); } } else { MessageBox.Show("Can not rename this file/directory", "Alert", MessageBoxButton.OK, MessageBoxImage.Error); } } catch (IOException) { MessageBox.Show("File name already taken", "Alert", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private bool IsFileNameTaken(CustomItemWithCollection selectedDirectory, bool isExists) { foreach (var item in selectedDirectory.Items) { if (textField.Text.Equals(Path.GetFileNameWithoutExtension(item.Name))) { isExists = true; MessageBox.Show("File name already exist", "Alert", MessageBoxButton.OK, MessageBoxImage.Error); } } return(isExists); }
private void AddFile() { try { MainWindow mainWindow = System.Windows.Application.Current.Windows.OfType <MainWindow>().FirstOrDefault(); CustomItemWithCollection sourceItem = Custom; CustomDirectory customDirectory = mainWindow.ctrTreeView.trvMenu.SelectedItem as CustomDirectory; bool isExist = false; foreach (var file in Custom.Items) { if (Path.GetFileNameWithoutExtension(file.Name).Equals("New file")) { isExist = true; } } if (!isExist) { string newFilePath = $"{customDirectory.Name}" + @"\New file.txt"; File.CreateText(newFilePath); CustomFile item = new CustomFile { Name = newFilePath, ShortName = @"New file.txt", DateCreated = DateTime.Now, Type = Path.GetExtension(newFilePath), Size = new FileInfo(newFilePath).Length / 512 + " KB" }; Custom.Items.Add(item); } else { MessageBox.Show("File name already exist", "Alert", MessageBoxButton.OK, MessageBoxImage.Error); } isExist = false; } catch (NullReferenceException) { MessageBox.Show("File name already exist", "Alert", MessageBoxButton.OK, MessageBoxImage.Error); } }