Pergunta

No campo caminho do arquivo, eu quero capturar o caminho de diretório como:

textbox1.Text = directory path

Ninguém?

Foi útil?

Solução 2

Bem, eu estou usando o VS 2008 SP1.Isso tudo que eu preciso:

private void button1_Click(object sender, EventArgs e)
{
    FolderBrowserDialog profilePath = new FolderBrowserDialog();

    if (profilePath.ShowDialog() == DialogResult.OK)        
    {
        profilePathTextBox.Text = profilePath.SelectedPath;
    }
    else
    {
        profilePathTextBox.Text = "Please Specify The Profile Path";
    }
}

Outras dicas

Há um FolderBrowserDialog classe que você pode usar se você quiser que o usuário selecione uma pasta.

http://msdn.microsoft.com/en-us/library/system.windows.forms.folderbrowserdialog.aspx

DialogResult result = folderBrowserDialog1.ShowDialog();
if (result.Equals(get_DialogResult().OK)) {
    textbox1.Text = folderBrowserDialog1.get_SelectedPath();
}

Se tudo que você quer é pegar o direcotory de um caminho completo, você pode fazer isso:

textbox1.Text = Path.GetDirectoryName(@"c:\windows\temp\myfile.txt");

Isto irá definir o Texto de propriedade para "c:\windows emp\"

Se você não quer um terrível, não-amigável diálogo*, tente Ookii.Caixas de diálogo ou veja outras respostas para Como configurar um OpenFileDialog para selecionar pastas?.A única desvantagem que eu vejo para Ookii é que ele requer .NET 4 Completo, não apenas o Perfil do Cliente.Mas a fonte é incluído no download, então eu vou trabalhar nisso.Pena que a licença não é LGPL ou similar...

Veja também: WinForms caixa de mensagem com botões textual

*Este é o que FolderBrowserDialog se parece com:

Ugly, unfriendly folder browser dialog

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top