TOpenDialog - архивировать как файлы - PullRequest
3 голосов
/ 19 июня 2011

Как в диалогах открытия и сохранения можно заставить zip-архивы отображаться как файлы, а не как папки?

Отображается в виде папок, я имею в виду так:

enter image description here

1 Ответ

10 голосов
/ 19 июня 2011

Диалог открытия файлов Windows в Vista и выше поддерживает интерфейс IFileDialogEvents.

Одним из событий (или обратного вызова, если хотите) является событие OnFolderChanging.Это позволяет исполнителю остановить навигацию в определенном месте.Использование этого события позволит вам прекратить ввод zip-файла в качестве папки, даже если эта возможность включена по умолчанию в установке Windows, на которой выполняется ваше приложение.Не знаю, как это разрешило бы навигацию в zip-архиве, если это не включено в самой Windows.

См. Интерфейс IFileDialogEvents (http://msdn.microsoft.com/en-us/library/bb775876(v=VS.85).aspx) для получения подробной информации.

AlphaControls, вероятно, использует этот метод.Чтобы сделать это самостоятельно, вам «нужно» только реализовать обработчик для события TOpenDialog.OnFolderChange (Спасибо, Дэвид).

Чтобы узнать больше об использовании Common Item Dialog , см.: http://msdn.microsoft.com/en-us/library/bb776913(v=VS.85).aspx

Примечание. Стандартные диалоги до Vista также поддерживают события, известные в этих версиях как уведомления.Он включает в себя уведомление FolderChange, но не FolderChanging, которое я могу найти.См. Общие диалоговые окна Уведомления (http://msdn.microsoft.com/en-us/library/ff468811(v=VS.85).aspx для списка поддерживаемых уведомлений. И Диалоговые окна (http://msdn.microsoft.com/en-us/library/ms632588(v=VS.85).aspx) для «входа» указывают на диалогящики.

...