Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   C# - Выбор файла и папки в одном диалоге (http://forum.oszone.net/showthread.php?t=184275)

Delirium 31-08-2010 03:41 1485327

C# - Выбор файла и папки в одном диалоге
 
Голову сломал, google перелопатил, ответа не нашел. Задача такая:
1. Имеется FileBrowserDialog - позволяет выбрать файлы в указанной папке.
2. Имеется FolderBrowserDialog - позволяет выбрать Папку.

Мне же необходимо диалоговое окно, которое позволяет выбрать как файлы, так и папки сразу. При выборе файлов с папкой в FileBrowserDialog, папка отбрасывается из конечного списка. Перелопатил все что мог, но так и не нашел решения. Вроде бы что то подобное есть на http://www.codeproject.com.nyud.net:8090/KB/files/, но у меня страница не открывается :)

Может, реализовывал кто подобный функционал или же я неглубоко поискал?

RUVATA 31-08-2010 09:39 1485410

Не уверен, но может быть поможет - http://www.vbnet.ru/faq/showtopic.asp?id=5

RUVATA 31-08-2010 10:06 1485424

По моему еще здесь идет о речь о чем-то подобном

Delirium 31-08-2010 14:49 1485672

Цитата:

Цитата RUVATA
По моему еще здесь »

Да, там есть такая опция. Но платить 50 баксов за пустяковую по функциональности вещь - это перебор. Тем более это требуется для бесплатной утилиты :)

LilLoco 31-08-2010 18:32 1485855

Delirium, Вы прямо заинтриговали своим вопросом!даже сам ударился в поиски! пока ничего не нашел :( но думаю, ищо не все перерыл :)

LilLoco 31-08-2010 21:30 1485982

Вот наконец то поиски увенчались каким то успехом, посмотри здесь ССЫЛКА , не проверял пока, не было возможности, но, думаю, все работает!

Delirium 02-09-2010 01:31 1486887

LilLoco, увы, но это тоже не то :)

LilLoco 02-09-2010 07:30 1486943

Эх, будем продолжать поиски :)

losaped 19-07-2011 10:57 1715478

Для получения всей необходимой информации достаточно использовать OpenFiledialog

Код:

string fullFileName;
using(OpenFileDialog dlg = new OpenFileDialog())
{
    if (dlg.ShowDialog() == DialogResult.OK)
        fullFileName = dlg.FileName;
}

Далее при помощи класса Path получаем интересующие нас сведения:
Код:

string dir=Path.GetDirectoryName(fullFileName);
string file=Path.GetfileName(fullFileName);
string ext=Path.GetExtension(fullFileName);
string onlyFileName=GetFileNameWithoutExtension(fullFileName);


LilLoco 19-07-2011 11:47 1715532

losaped, При этом все равно нужно для выбора директории "открыть" файл... а по условии нужно либо саму директорию либо файл...

losaped 19-07-2011 12:33 1715563

Извиняюсь, не понял вопрос, хотя, судя по дате вопрос уже не актуален.

Delirium 19-07-2011 15:12 1715683

losaped, суть такая, открываешь окно диалога и мышкой выделяешь файлы и папки, как в проводнике. Жмешь выбрать, и получаешь список всех файлов, включая файлы из подпапок. А в целом вы правы, вопрос уже не актуален, проблема была решена путем реализации drag-n-drop выбранных объектов на окно программы.


Время: 17:02.

Время: 17:02.
© OSzone.net 2001-