мульти выбор папок и файлов - PullRequest
2 голосов
/ 30 ноября 2010

можно выбрать несколько файлов, используя OpenFileDialog. (установка множественного выбора в true)

вопрос в том, как выбрать несколько файлов и папок одновременно?

Я знаю, что такое FolderBrowseDialog, я знаю, что должен удерживать Ctrl или Shift! : D

предполагается, что папка содержит 5 папок и 2 файла. Сценарий состоит в том, чтобы выбрать, например, 1 из файлов и 2 папки.

Я не знаю, почему люди голосуют против этого вопроса !!

----------------- Редактировать --------------------

Предположим, OpenFileDialog, вы можете выбрать столько файлов, сколько вы хотите в папке, хорошо? Я хочу что-то подобное, но с возможностью выбора папок тоже! так как OpenFileDialog возвращает выбранные имена файлов в массиве FileNames, этот диалог возвращает что-то вроде массива SelectedPaths, который содержит имена файлов и пути к папкам.

Ответы [ 2 ]

1 голос
/ 30 ноября 2010

Диалог Common Item (который заменяет диалоговое окно Open File Name Common) имеет несколько пунктов настройки.Я не пробовал, но перехватив IFileDialogEvents , вы сможете изменить поведение по своему усмотрению.(Возможно, вам придется добавить некоторые хитрости, это было возможно с помощью диалогового окна файла стиля OFNHookProc в XP)


Несмотря на то, что это означает чтение большого количества разочаровывающей документации Microsoft, она предпочтительнее разработки собственного диалога:

При копировании объекта платформы вы должны скопировать все его элементы.

Это означает, например, вставку файлов через Ctrl + V, Shift + Ins или контекстное меню,и если то расширение оболочки, которое я только что написал, не работает, я разозлен.

1 голос
/ 30 ноября 2010

Я сделал это в приложении, которое я создал, и в итоге я использовал элемент управления TreeView и просто сопоставил жесткий диск с этим элементом управления - каждая папка имела TreeNode, вложенный в соответствии со структурой папки, а затем файлы в самый глубокий уровень.

Несмотря на то, что он требует памяти, пользователь может выбирать / отменять выбор отдельных файлов, и довольно легко автоматически выбирать / отменять выбор всех дочерних файлов, когда кто-то проверяет родительскую папку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...