Подтвердить что ты не робот

Как создать элемент управления браузером браузера Explorer?

Используя С# и WinForms в VS2008, я хочу создать элемент управления браузером файлов, который выглядит и действует как левая панель в Проводнике Windows. К моему удивлению, такой контроль не поставляется с .NET по умолчанию.

В идеале я хотел бы, чтобы его содержимое было точно таким же, как в Explorer. Например, в Windows 7 он должен показывать псевдопапки "Избранное" и "Библиотеки". Конечно, я не хочу кодировать специально для каждой версии Windows, если я могу ей помочь.

Я просматривал, и есть некоторые примеры таких элементов управления, но все они ручные и поэтому не будут работать на 100% такими же, как в Explorer.

Есть ли способ, которым я могу просто повторно использовать элемент управления Explorer? Или, если нет, получить доступ к дереву предметов, которые он будет показывать?

4b9b3361

Ответ 1

Microsoft предоставляет пошаговое руководство для создания интерфейса стиля проводника Windows на С#.

Существует также несколько примеров Code Project и других сайтов. Непосредственными примерами являются Дерево проводников, Мой проводник, File Browser и Advanced File Explorer, но есть и другие. Дерево проводников кажется лучшим из краткого взгляда, который я взял.

Я использовал поисковый термин windows explorer tree view C# в Google, чтобы найти эти ссылки.

Ответ 2

Это не так просто, как кажется, реализовать такой элемент управления. Explorer работает с элементами оболочки, а не элементами файловой системы (например, панель управления, папка с принтерами и т.д.). Если вам нужно его реализовать, я предлагаю взглянуть на функции оболочки Windows на http://msdn.microsoft.com/en-us/library/bb776426(VS.85).aspx.

Ответ 3

Посмотрите контрольный набор Shell MegaPack. Он предоставляет проводник Windows, такой как просмотр папки/файла, с большинством функций и функций, таких как контекстные меню, переименование, перетаскивание, значки, значки наложения, миниатюры и т.д.