示例#1
0
 /// <summary>
 /// Переход в подкаталог
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void buttonNextSubdirectory_Click(object sender, EventArgs e)
 {
     if (string.IsNullOrEmpty(textBoxNextSubdirectory.Text) || BunnedSymbols.IsBunned(textBoxNextSubdirectory.Text))
     {
         MessageBox.Show("Проверьте правильность имени открываемой директории, возможно, поле пустое!", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         textBoxNextSubdirectory.Focus();
         textBoxNextSubdirectory.ForeColor = Color.Red;
     }
     else
     {
         OpenDirectory openDirectory = new OpenDirectory(textBoxNextSubdirectory.Text, ref fileSystem);
         if (!fileSystem.ExecuteCommand(openDirectory))
         {
             MessageBox.Show("Возможно, открываемая директория не является директорией", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
         else
         {
             ReadDirectory readDirectory = new ReadDirectory(fileSystem);
             if (!fileSystem.ExecuteCommand(readDirectory))
             {
                 MessageBox.Show("Проверяй массив object-ов, похоже неверный апкаст", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 this.Close();
             }
             textBoxSubdirectories.Clear();
             for (int i = 0; i < fileSystem.FilesAndDirectoriesInDirectory.Count; i++)
             {
                 textBoxSubdirectories.Text += "\"" + fileSystem.FilesAndDirectoriesInDirectory[i] + "\"" + " ";
             }
         }
     }
     textBoxNextSubdirectory.Clear();
 }
示例#2
0
        public static bool OnOpenDirectory(IDirectoryViewModel e)
        {
            var args = new OpenDirectoryArgs(e);

            if (e.Path != "" && !Directory.Exists(e.Path))
            {
                OnNoExistDirectory(e);
                throw new DirectoryDoesExistException();
            }
            OpenDirectory?.Invoke(null, args);
            return(args.Cancel);
        }
示例#3
0
 private void TreeView_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
 {
     if (e.Button == MouseButtons.Right)
     {
         TreeView.SelectedNode = e.Node;
     }
     else if (e.Button == MouseButtons.Left)
     {
         var hit = TreeView.HitTest(e.Location);
         if (hit.Location != TreeViewHitTestLocations.PlusMinus)
         {
             OpenDirectory?.Invoke(sender, new DirectoryEventArgs(GetPath(e.Node)));
         }
     }
 }
示例#4
0
 public void OpenDir()
 {
     OpenDirectory.Open(FileManager._bindDirectory);
 }