コード例 #1
0
 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);
         }
     }
 }
コード例 #2
0
        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);
        }
コード例 #3
0
        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);
            }
        }