Arquivos com o FolderBrowserDialog em C#

O FolderBrowserDialog é uma ferramenta poderosa no C# que permite ao usuário navegar e selecionar pastas do sistema de arquivos. É especialmente útil em aplicações Windows Forms quando você precisa que o usuário escolha um diretório para abrir, salvar ou manipular arquivos. Neste post, vamos explorar como manipular arquivos com o FolderBrowserDialog em C#.

Exemplo de código

using System;
using System.IO;
using System.Windows.Forms;

namespace FolderBrowserDialogExample
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void buttonSelectFolder_Click(object sender, EventArgs e)
        {
            using (FolderBrowserDialog folderBrowser = new FolderBrowserDialog())
            {
                // Configurações do FolderBrowserDialog
                folderBrowser.Description = "Selecione uma pasta";
                folderBrowser.ShowNewFolderButton = true;

                // Exibe o diálogo e verifica se o usuário clicou em OK
                if (folderBrowser.ShowDialog() == DialogResult.OK)
                {
                    // Obtém o caminho da pasta selecionada
                    string selectedPath = folderBrowser.SelectedPath;
                    textBoxFolderPath.Text = selectedPath;

                    // Lista os arquivos na pasta selecionada
                    ListFiles(selectedPath);
                }
            }
        }

        private void ListFiles(string path)
        {
            // Limpa a lista antes de adicionar novos itens
            listBoxFiles.Items.Clear();

            try
            {
                // Obtém todos os arquivos no diretório selecionado
                string[] files = Directory.GetFiles(path);
                foreach (string file in files)
                {
                    // Adiciona apenas o nome do arquivo (sem o caminho completo)
                    listBoxFiles.Items.Add(Path.GetFileName(file));
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro ao listar arquivos: {ex.Message}");
            }
        }
    }
}

Explicação do código

  • buttonSelectFolder_Click: Este método é o manipulador de eventos que é chamado quando o botão para selecionar uma pasta é clicado. Ele exibe o FolderBrowserDialog;

  • FolderBrowserDialog: O diálogo é instanciado e suas propriedades são configuradas. A descrição é definida e a opção de criar uma nova pasta é habilitada;

  • ShowDialog: O método exibe o diálogo e aguarda o usuário fazer uma seleção. Se o usuário clicar em “OK”, o caminho da pasta selecionada é obtido;

  • ListFiles: Este método lista todos os arquivos na pasta selecionada. Ele utiliza Directory.GetFiles() para obter os arquivos e os adiciona ao ListBox. Caso ocorra um erro, uma mensagem é exibida.

Outro exemplo prático

...    
//Define as configurações básicas do componente
folderBrowserDialog1.Description = "Selecione um local para fazer o backup das pastas"; Define rótulo
folderBrowserDialog1.RootFolder = Environment.SpecialFolder.MyComputer; //Caixa de diálogo começa na pasta raiz
folderBrowserDialog1.ShowNewFolderButton = true; //Habilita a opção para criar nova pasta
       
//Abre caixa de diálogo para escolher o destino       
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
  destinationPath = folderBrowserDialog1.SelectedPath; 

Obs.: folderBrowserDialog1 é o nome dado ao componente   
... 

Basta inserir os códigos acima, por exemplo, dentro o evento OnClick de um Button.

O FolderBrowserDialog é uma ferramenta fácil de usar que permite ao usuário navegar pelo sistema de arquivos e selecionar pastas.

É bem útil em aplicações que precisam de interação com o sistema de arquivos, como editores de texto, gerenciadores de arquivos, ou aplicações que trabalham com dados de entrada de arquivos.

Dúvidas ou sugestões sobre arquivos com o FolderBrowserDialog em C#? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
 https://youtube.com/criandobits

Tags:

Sobre o Autor

Benedito Silva Júnior
Benedito Silva Júnior

Bacharel em Sistemas de Informação pelo Instituto Paulista de Pesquisa e Ensino IPEP. Apaixonado por tecnologias e games do tempo da vovó!

0 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *